Files
go-gst/gst/gst_element_exports.go
2025-09-16 22:36:07 +02:00

249 lines
9.1 KiB
Go

package gst
/*
#include "gst.go.h"
*/
import "C"
import (
"time"
"unsafe"
"github.com/go-gst/go-glib/glib"
)
//export goGstElementClassChangeState
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassChangeState(elem *C.GstElement, change C.GstStateChange) C.GstStateChangeReturn {
var ret StateChangeReturn
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface {
ChangeState(*Element, StateChange) StateChangeReturn
})
ret = iface.ChangeState(goElem, StateChange(change))
return C.GstStateChangeReturn(ret)
}
//export goGstElementClassGetState
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassGetState(elem *C.GstElement, state, pending *C.GstState, timeout C.GstClockTime) C.GstStateChangeReturn {
var ret StateChangeReturn
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface {
GetState(*Element, time.Duration) (ret StateChangeReturn, current, pending State) // should this be a ClockTime?
})
var cur, pend State
ret, cur, pend = iface.GetState(goElem, time.Duration(timeout)*time.Nanosecond)
if ret != StateChangeFailure {
*state = C.GstState(cur)
*pending = C.GstState(pend)
}
return C.GstStateChangeReturn(ret)
}
//export goGstElementClassNoMorePads
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassNoMorePads(elem *C.GstElement) {
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ NoMorePads(*Element) })
iface.NoMorePads(goElem)
}
//export goGstElementClassPadAdded
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassPadAdded(elem *C.GstElement, pad *C.GstPad) {
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ PadAdded(*Element, *Pad) })
iface.PadAdded(goElem, wrapPad(toGObject(unsafe.Pointer(pad))))
}
//export goGstElementClassPadRemoved
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassPadRemoved(elem *C.GstElement, pad *C.GstPad) {
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ PadRemoved(*Element, *Pad) })
iface.PadRemoved(goElem, wrapPad(toGObject(unsafe.Pointer(pad))))
}
//export goGstElementClassPostMessage
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassPostMessage(elem *C.GstElement, msg *C.GstMessage) C.gboolean {
var ret C.gboolean
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ PostMessage(*Element, *Message) bool })
ret = gboolean(iface.PostMessage(goElem, wrapMessage(msg)))
return ret
}
//export goGstElementClassProvideClock
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassProvideClock(elem *C.GstElement) *C.GstClock {
var clock *Clock
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ ProvideClock(*Element) *Clock })
clock = iface.ProvideClock(goElem)
if clock == nil {
return nil
}
return clock.Instance()
}
//export goGstElementClassQuery
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassQuery(elem *C.GstElement, query *C.GstQuery) C.gboolean {
var ret C.gboolean
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ Query(*Element, *Query) bool })
ret = gboolean(iface.Query(goElem, wrapQuery(query)))
return ret
}
//export goGstElementClassReleasePad
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassReleasePad(elem *C.GstElement, pad *C.GstPad) {
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ ReleasePad(*Element, *Pad) })
iface.ReleasePad(goElem, wrapPad(toGObject(unsafe.Pointer(pad))))
}
//export goGstElementClassRequestNewPad
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassRequestNewPad(elem *C.GstElement, templ *C.GstPadTemplate, name *C.gchar, caps *C.GstCaps) *C.GstPad {
var pad *Pad
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface {
RequestNewPad(self *Element, templ *PadTemplate, name string, caps *Caps) *Pad
})
pad = iface.RequestNewPad(
goElem,
wrapPadTemplate(toGObject(unsafe.Pointer(templ))),
C.GoString(name),
wrapCaps(caps),
)
if pad == nil {
return nil
}
return pad.Instance()
}
//export goGstElementClassSendEvent
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassSendEvent(elem *C.GstElement, event *C.GstEvent) C.gboolean {
var ret C.gboolean
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ SendEvent(*Element, *Event) bool })
ret = gboolean(iface.SendEvent(goElem, wrapEvent(event)))
return ret
}
//export goGstElementClassSetBus
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassSetBus(elem *C.GstElement, bus *C.GstBus) {
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ SetBus(*Element, *Bus) })
iface.SetBus(goElem, wrapBus(toGObject(unsafe.Pointer(bus))))
}
//export goGstElementClassSetClock
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassSetClock(elem *C.GstElement, clock *C.GstClock) C.gboolean {
var ret C.gboolean
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ SetClock(*Element, *Clock) bool })
ret = gboolean(iface.SetClock(goElem, wrapClock(toGObject(unsafe.Pointer(clock)))))
return ret
}
//export goGstElementClassSetContext
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassSetContext(elem *C.GstElement, ctx *C.GstContext) {
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface{ SetContext(*Element, *Context) })
iface.SetContext(goElem, wrapContext(ctx))
}
//export goGstElementClassSetState
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassSetState(elem *C.GstElement, state C.GstState) C.GstStateChangeReturn {
var ret C.GstStateChangeReturn
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface {
SetState(*Element, State) StateChangeReturn
})
ret = C.GstStateChangeReturn(iface.SetState(goElem, State(state)))
return ret
}
//export goGstElementClassStateChanged
//
// Deprecated: This is handwritten and will be removed in a future version. Please use the autogenerated bindings instead.
func goGstElementClassStateChanged(elem *C.GstElement, old, new, pending C.GstState) {
goElem := wrapElement(&glib.Object{GObject: glib.ToGObject(unsafe.Pointer(elem))})
subclass := glib.FromObjectUnsafePrivate(unsafe.Pointer(elem))
iface := subclass.(interface {
StateChanged(self *Element, old, new, pending State)
})
iface.StateChanged(goElem, State(old), State(new), State(pending))
}