gst/: Wrap more GstIndexEntry methods and properties.
authorEdward Hervey <bilboed@bilboed.com>
Fri, 2 Jan 2009 21:46:30 +0000 (21:46 +0000)
committerEdward Hervey <bilboed@bilboed.com>
Fri, 2 Jan 2009 21:46:30 +0000 (21:46 +0000)
Original commit message from CVS:
* gst/gst-types.defs:
* gst/gst.defs:
* gst/gst.override:
Wrap more GstIndexEntry methods and properties.

ChangeLog
gst/gst-types.defs
gst/gst.defs
gst/gst.override

index 62b21fe..c122e6a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-01-02  Edward Hervey  <edward.hervey@collabora.co.uk>
+
+       * gst/gst-types.defs:
+       * gst/gst.defs:
+       * gst/gst.override:
+       Wrap more GstIndexEntry methods and properties.
+
 2008-12-31  Edward Hervey  <edward.hervey@collabora.co.uk>
 
        * configure.ac:
index e070374..01ff7a4 100644 (file)
   (in-module "Gst")
   (c-name "GstIndexEntry")
   (gtype-id "GST_TYPE_INDEX_ENTRY")
+  (fields
+   '("GstIndexEntryType" "type")
+   '("gint" "id")
+   '("gint" "NASSOCS")
+   '("GstAssocFlags" "ASSOC_FLAGS")
+   '("const-gchar*" "ID_DESCRIPTION")
+  )
 )
 
+
 (define-pointer StaticPadTemplate
   (in-module "Gst")
   (c-name "GstStaticPadTemplate")
index 1f55fc6..2cd5283 100644 (file)
   )
 )
 
+(define-method ASSOC_FORMAT
+  (of-object "GstIndexEntry")
+  (c-name "GST_INDEX_ASSOC_FORMAT")
+  (return-type "GstFormat")
+  (parameters
+   '("guint" "i")
+  )
+)
+
+(define-method ASSOC_VALUE
+  (of-object "GstIndexEntry")
+  (c-name "GST_INDEX_ASSOC_VALUE")
+  (return-type "gint64")
+  (parameters
+   '("guint" "i")
+  )
+)
+
 (define-function index_factory_get_type
   (c-name "gst_index_factory_get_type")
   (return-type "GType")
index bacde83..8e2734c 100644 (file)
@@ -1594,3 +1594,95 @@ _wrap_g_error_new(PyGBoxed *self, PyObject *args, PyObject *kwargs)
     self->free_on_dealloc = TRUE;
     return 0;
 }
+%%
+override-attr GstIndexEntry.NASSOCS
+static PyObject *
+_wrap_gst_index_entry__get_NASSOCS(PyObject *self, void *closure)
+{
+    GstIndexEntry *entry;
+
+    g_assert (self);
+    entry = (GstIndexEntry*) pyg_boxed_get(self, GstIndexEntry);
+    g_assert (entry);
+
+    if (entry->type != GST_INDEX_ENTRY_ASSOCIATION) {
+       PyErr_SetString(PyExc_RuntimeError, "IndexEntry is not an AssociationEntry");
+       return NULL;
+    }
+    return PyInt_FromLong(GST_INDEX_NASSOCS(entry));
+}
+%%
+override-attr GstIndexEntry.ASSOC_FLAGS
+static PyObject *
+_wrap_gst_index_entry__get_ASSOC_FLAGS(PyObject *self, void *closure)
+{
+    GstIndexEntry *entry;
+
+    g_assert (self);
+    entry = (GstIndexEntry*) pyg_boxed_get(self, GstIndexEntry);
+    g_assert (entry);
+
+    if (entry->type != GST_INDEX_ENTRY_ASSOCIATION) {
+       PyErr_SetString(PyExc_RuntimeError, "IndexEntry is not an AssociationEntry");
+       return NULL;
+    }
+    return pyg_flags_from_gtype(GST_TYPE_ASSOC_FLAGS,
+                               GST_INDEX_ASSOC_FLAGS (entry));
+}
+%%
+override-attr GstIndexEntry.ID_DESCRIPTION
+static PyObject *
+_wrap_gst_index_entry__get_ID_DESCRIPTION(PyObject *self, void *closure)
+{
+    GstIndexEntry *entry;
+
+    g_assert (self);
+    entry = (GstIndexEntry*) pyg_boxed_get(self, GstIndexEntry);
+    g_assert (entry);
+
+    if (entry->type != GST_INDEX_ENTRY_ID) {
+       PyErr_SetString(PyExc_RuntimeError, "IndexEntry is not an ID Entry");
+       return NULL;
+    }
+    if (GST_INDEX_ID_DESCRIPTION (entry))
+       return PyString_FromString(GST_INDEX_ID_DESCRIPTION (entry));
+    Py_INCREF(Py_None);
+    return Py_None;
+}
+%%
+override-attr GstIndexEntry.FORMAT_FORMAT
+static PyObject *
+_wrap_gst_index_entry__get_FORMAT_FORMAT(PyObject *self, void *closure)
+{
+    GstIndexEntry *entry;
+
+    g_assert (self);
+    entry = (GstIndexEntry*) pyg_boxed_get(self, GstIndexEntry);
+    g_assert (entry);
+
+    if (entry->type != GST_INDEX_ENTRY_FORMAT) {
+       PyErr_SetString(PyExc_RuntimeError, "IndexEntry is not a FORMAT Entry");
+       return NULL;
+    }
+    return pyg_enum_from_gtype (GST_TYPE_FORMAT, GST_INDEX_FORMAT_FORMAT (entry));
+}
+%%
+override-attr GstIndexEntry.FORMAT_KEY
+static PyObject *
+_wrap_gst_index_entry__get_FORMAT_KEY(PyObject *self, void *closure)
+{
+    GstIndexEntry *entry;
+
+    g_assert (self);
+    entry = (GstIndexEntry*) pyg_boxed_get(self, GstIndexEntry);
+    g_assert (entry);
+
+    if (entry->type != GST_INDEX_ENTRY_FORMAT) {
+       PyErr_SetString(PyExc_RuntimeError, "IndexEntry is not a FORMAT Entry");
+       return NULL;
+    }
+    if (GST_INDEX_FORMAT_KEY (entry))
+       return PyString_FromString(GST_INDEX_FORMAT_KEY (entry));
+    Py_INCREF(Py_None);
+    return Py_None;
+}