Files
go-gst/gst/gst.go.c

272 lines
3.9 KiB
C

#include <gst/gst.h>
#include "gst.go.h"
/*
Utilitits
*/
gboolean isParamSpecTypeCaps (GParamSpec * p)
{
return p->value_type == GST_TYPE_CAPS;
}
gboolean isParamSpecEnum (GParamSpec * p)
{
return G_IS_PARAM_SPEC_ENUM(p);
}
gboolean isParamSpecFlags (GParamSpec * p)
{
return G_IS_PARAM_SPEC_FLAGS(p);
}
gboolean isParamSpecObject (GParamSpec * p)
{
return G_IS_PARAM_SPEC_OBJECT(p);
}
gboolean isParamSpecBoxed (GParamSpec * p)
{
return G_IS_PARAM_SPEC_BOXED(p);
}
gboolean isParamSpecPointer (GParamSpec * p)
{
return G_IS_PARAM_SPEC_POINTER(p);
}
gboolean isParamSpecFraction (GParamSpec * p)
{
return GST_IS_PARAM_SPEC_FRACTION(p);
}
gboolean isParamSpecGstArray (GParamSpec * p)
{
return p->value_type == GST_TYPE_ARRAY;
}
GEnumValue * getEnumValues (GParamSpec * p, guint * size)
{
GEnumValue * values;
values = G_ENUM_CLASS (g_type_class_ref (p->value_type))->values;
guint i = 0;
while (values[i].value_name) {
++i;
}
*size = i;
return values;
}
GFlagsValue * getParamSpecFlags (GParamSpec * p, guint * size)
{
GParamSpecFlags *pflags = G_PARAM_SPEC_FLAGS (p);
GFlagsValue *vals = pflags->flags_class->values;
guint i = 0;
while (vals[i].value_name) {
++i;
}
*size = i;
return vals;
}
gboolean cgoBusFunc (GstBus * bus, GstMessage * msg, gpointer user_data)
{
return goBusFunc(bus, msg, user_data);
}
gboolean structureForEach (GQuark field_id, GValue * value, gpointer user_data)
{
return structForEachCb(field_id, value, user_data);
}
GObjectClass * getGObjectClass (void * p) {
return G_OBJECT_GET_CLASS (p);
}
int sizeOfGCharArray (gchar ** arr) {
int i;
for (i = 0 ; 1 ; i = i + 1) {
if (arr[i] == NULL) { return i; };
}
}
gboolean gstObjectFlagIsSet (GstObject * obj, GstElementFlags flags)
{
return GST_OBJECT_FLAG_IS_SET (obj, flags);
}
gboolean gstElementIsURIHandler (GstElement * elem)
{
return GST_IS_URI_HANDLER (elem);
}
/*
Number functions
*/
GParamSpecUInt * getParamUInt (GParamSpec * param)
{
return G_PARAM_SPEC_UINT (param);
}
GParamSpecInt * getParamInt (GParamSpec * param)
{
return G_PARAM_SPEC_INT (param);
}
GParamSpecUInt64 * getParamUInt64 (GParamSpec * param)
{
return G_PARAM_SPEC_UINT64 (param);
}
GParamSpecInt64 * getParamInt64 (GParamSpec * param)
{
return G_PARAM_SPEC_INT64 (param);
}
GParamSpecFloat * getParamFloat (GParamSpec * param)
{
return G_PARAM_SPEC_FLOAT (param);
}
GParamSpecDouble * getParamDouble(GParamSpec * param)
{
return G_PARAM_SPEC_DOUBLE (param);
}
/*
Type Castings
*/
GstUri *
toGstURI(void *p)
{
return (GST_URI(p));
}
GstURIHandler *
toGstURIHandler(void *p)
{
return (GST_URI_HANDLER(p));
}
GstRegistry *
toGstRegistry(void *p)
{
return (GST_REGISTRY(p));
}
GstPlugin *
toGstPlugin(void *p)
{
return (GST_PLUGIN(p));
}
GstPluginFeature *
toGstPluginFeature(void *p)
{
return (GST_PLUGIN_FEATURE(p));
}
GstObject *
toGstObject(void *p)
{
return (GST_OBJECT(p));
}
GstElementFactory *
toGstElementFactory(void *p)
{
return (GST_ELEMENT_FACTORY(p));
}
GstElement *
toGstElement(void *p)
{
return (GST_ELEMENT(p));
}
GstBin *
toGstBin(void *p)
{
return (GST_BIN(p));
}
GstBus *
toGstBus(void *p)
{
return (GST_BUS(p));
}
GstMessage *
toGstMessage(void *p)
{
return (GST_MESSAGE(p));
}
GstPipeline *
toGstPipeline(void *p)
{
return (GST_PIPELINE(p));
}
GstPad *
toGstPad(void *p)
{
return (GST_PAD(p));
}
GstPadTemplate *
toGstPadTemplate(void *p)
{
return (GST_PAD_TEMPLATE(p));
}
GstStructure *
toGstStructure(void *p)
{
return (GST_STRUCTURE(p));
}
GstClock *
toGstClock(void *p)
{
return (GST_CLOCK(p));
}
GstMiniObject *
toGstMiniObject(void *p)
{
return (GST_MINI_OBJECT(p));
}
GstCaps *
toGstCaps(void *p)
{
return (GST_CAPS(p));
}
GstCapsFeatures *
toGstCapsFeatures(void *p)
{
return (GST_CAPS_FEATURES(p));
}
GstBuffer *
toGstBuffer(void *p)
{
return (GST_BUFFER(p));
}
GstBufferPool *
toGstBufferPool(void *p)
{
return (GST_BUFFER_POOL(p));
}
GstSample *
toGstSample(void *p)
{
return (GST_SAMPLE(p));
}