Files
go-gst/gst/base/gst_push_src.go
2023-08-11 13:50:02 +02:00

31 lines
735 B
Go

package base
/*
#include "gst.go.h"
*/
import "C"
import (
"github.com/go-gst/go-glib/glib"
"github.com/go-gst/go-gst/gst"
)
// GstPushSrc represents a GstBaseSrc.
type GstPushSrc struct{ *GstBaseSrc }
// ToGstPushSrc returns a GstPushSrc object for the given object.
func ToGstPushSrc(obj interface{}) *GstPushSrc {
switch obj := obj.(type) {
case *gst.Object:
return &GstPushSrc{&GstBaseSrc{&gst.Element{Object: obj}}}
case *glib.Object:
return &GstPushSrc{&GstBaseSrc{&gst.Element{Object: &gst.Object{InitiallyUnowned: &glib.InitiallyUnowned{Object: obj}}}}}
}
return nil
}
// Instance returns the underlying C GstBaseSrc instance
func (g *GstPushSrc) Instance() *C.GstPushSrc {
return C.toGstPushSrc(g.Unsafe())
}