mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-24 09:10:36 +00:00
835f29e2bb
Original commit message from CVS: * codegen/codegen.py: (GstMiniObjectWrapper.constructor_tmpl): let's not forget to wrap the MiniObject :) * gst/gst-types.defs: * gst/gst.defs: Always keep up to date with the core * gst/gstelement.override: override for gst_element_query_position * gst/pygstminiobject.c: * gst/pygstminiobject.h: * gst/gst.override: PyGstMiniObject now properly wrap GstMiniObject and are referenced in a global hash table
55 lines
1.2 KiB
C
55 lines
1.2 KiB
C
/* -*- Mode: C; c-basic-offset: 4 -*- */
|
|
|
|
#ifndef _PYGSTMINIOBJECT_H_
|
|
#define _PYGSTMINIOBJECT_H_
|
|
|
|
#include <Python.h>
|
|
|
|
#include <glib.h>
|
|
#include <glib-object.h>
|
|
|
|
#include "common.h"
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
/* Work around bugs in PyGILState api fixed in 2.4.0a4 */
|
|
#if PY_VERSION_HEX < 0x020400A4
|
|
#define PYGIL_API_IS_BUGGY TRUE
|
|
#else
|
|
#define PYGIL_API_IS_BUGGY FALSE
|
|
#endif
|
|
|
|
typedef struct {
|
|
PyObject_HEAD
|
|
GstMiniObject *obj;
|
|
PyObject *inst_dict; /* the instance dictionary -- must be last */
|
|
PyObject *weakreflist; /* list of weak references */
|
|
} PyGstMiniObject;
|
|
|
|
PyObject *
|
|
pygstminiobject_new(GstMiniObject *obj);
|
|
|
|
#define pygstminiobject_get(v) (((PyGstMiniObject *)(v))->obj)
|
|
#define pygstminiobject_check(v,base) (PyObject_TypeCheck(v,base))
|
|
|
|
void
|
|
pygstminiobject_register_class(PyObject *dict, const gchar *type_name,
|
|
GType gtype, PyTypeObject *type,
|
|
PyObject *bases);
|
|
void
|
|
pygstminiobject_register_wrapper(PyObject *self);
|
|
|
|
void
|
|
pygst_miniobject_init();
|
|
|
|
#ifndef _INSIDE_PYGSTMINIOBJECT_
|
|
|
|
struct _PyGObject_Functions *_PyGObject_API;
|
|
|
|
extern PyTypeObject PyGstMiniObject_Type;
|
|
|
|
#endif /* !_INSIDE_PYGSTMINIOBJECT_ */
|
|
|
|
G_END_DECLS
|
|
|
|
#endif /* !_PYGSTMINIOBJECT_H_ */
|