From 57b9efc9cfca0c55d1b13ea80531d0b1cbf522ac Mon Sep 17 00:00:00 2001 From: Johan Dahlin Date: Wed, 9 Jun 2004 13:40:27 +0000 Subject: [PATCH] gst/gstbuffer.override (_wrap_gst_buffer_flag_is_set) Original commit message from CVS: * gst/gstbuffer.override (_wrap_gst_buffer_flag_is_set) (_wrap_gst_buffer_flag_set, _wrap_gst_buffer_flag_unset): Impl. * testsuite/buffer.py (BufferTest.testBufferFlagIsSet): New test --- ChangeLog | 7 +++++++ common | 2 +- gst/gstbuffer.override | 46 ++++++++++++++++++++++++++++++++++++++++++++++ testsuite/buffer.py | 17 +++++++++++++++++ testsuite/test_buffer.py | 17 +++++++++++++++++ 5 files changed, 88 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 6890ffd..4329c93 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2004-06-09 Johan Dahlin + + * gst/gstbuffer.override (_wrap_gst_buffer_flag_is_set) + (_wrap_gst_buffer_flag_set, _wrap_gst_buffer_flag_unset): Impl. + + * testsuite/buffer.py (BufferTest.testBufferFlagIsSet): New test + 2004-05-24 Johan Dahlin * testsuite/interface.py (Availability.testXOverlay): Extend to diff --git a/common b/common index 85747ad..46a6baf 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit 85747ad7d18dfc697845a457631f3877fda46906 +Subproject commit 46a6bafafc3f83c5dbccf20eae52db71c67dfe06 diff --git a/gst/gstbuffer.override b/gst/gstbuffer.override index fdfdc32..27be8cc 100644 --- a/gst/gstbuffer.override +++ b/gst/gstbuffer.override @@ -249,3 +249,49 @@ gst_buffer_length(PyGObject *self) return GST_BUFFER_SIZE(self->obj); } +%% +define GstBuffer.flag_is_set +static PyObject * +_wrap_gst_buffer_flag_is_set(PyGObject *self, PyObject *args) +{ + int flag; + PyObject *retval; + + if (!PyArg_ParseTuple(args, "i:GstBuffer.flag_is_set", &flag)) + return NULL; + + retval = GST_BUFFER_FLAG_IS_SET(self->obj, flag) ? Py_True : Py_False; + + Py_INCREF(retval); + return retval; +} +%% +define GstBuffer.flag_set +static PyObject * +_wrap_gst_buffer_flag_set(PyGObject *self, PyObject *args) +{ + int flag; + + if (!PyArg_ParseTuple(args, "i:GstBuffer.set", &flag)) + return NULL; + + GST_BUFFER_FLAG_SET(self->obj, flag); + + Py_INCREF(Py_None); + return Py_None; +} +%% +define GstBuffer.flag_unset +static PyObject * +_wrap_gst_buffer_flag_unset(PyGObject *self, PyObject *args) +{ + int flag; + + if (!PyArg_ParseTuple(args, "i:GstBuffer.unset", &flag)) + return NULL; + + GST_BUFFER_FLAG_UNSET(self->obj, flag); + + Py_INCREF(Py_None); + return Py_None; +} diff --git a/testsuite/buffer.py b/testsuite/buffer.py index 82262cd..18f04e4 100644 --- a/testsuite/buffer.py +++ b/testsuite/buffer.py @@ -63,5 +63,22 @@ class BufferTest(unittest.TestCase): spaned_buffer = buffer1.span(0L, buffer2, 6L) assert str(spaned_buffer) == 'foobar' + def testBufferFlagIsSet(self): + buffer = gst.Buffer() + # Off by default + assert not buffer.flag_is_set(gst.BUFFER_READONLY) + + # Try switching on and off + buffer.flag_set(gst.BUFFER_READONLY) + assert buffer.flag_is_set(gst.BUFFER_READONLY) + buffer.flag_unset(gst.BUFFER_READONLY) + assert not buffer.flag_is_set(gst.BUFFER_READONLY) + + # Try switching on and off + buffer.flag_set(gst.BUFFER_IN_CAPS) + assert buffer.flag_is_set(gst.BUFFER_IN_CAPS) + buffer.flag_unset(gst.BUFFER_IN_CAPS) + assert not buffer.flag_is_set(gst.BUFFER_IN_CAPS) + if __name__ == "__main__": unittest.main() diff --git a/testsuite/test_buffer.py b/testsuite/test_buffer.py index 82262cd..18f04e4 100644 --- a/testsuite/test_buffer.py +++ b/testsuite/test_buffer.py @@ -63,5 +63,22 @@ class BufferTest(unittest.TestCase): spaned_buffer = buffer1.span(0L, buffer2, 6L) assert str(spaned_buffer) == 'foobar' + def testBufferFlagIsSet(self): + buffer = gst.Buffer() + # Off by default + assert not buffer.flag_is_set(gst.BUFFER_READONLY) + + # Try switching on and off + buffer.flag_set(gst.BUFFER_READONLY) + assert buffer.flag_is_set(gst.BUFFER_READONLY) + buffer.flag_unset(gst.BUFFER_READONLY) + assert not buffer.flag_is_set(gst.BUFFER_READONLY) + + # Try switching on and off + buffer.flag_set(gst.BUFFER_IN_CAPS) + assert buffer.flag_is_set(gst.BUFFER_IN_CAPS) + buffer.flag_unset(gst.BUFFER_IN_CAPS) + assert not buffer.flag_is_set(gst.BUFFER_IN_CAPS) + if __name__ == "__main__": unittest.main() -- 2.7.4