summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2009-10-02 15:44:16 +0200
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2009-10-02 15:44:16 +0200
commit202b88f4380c76477fb79da5e15fe56d685cf988 (patch)
tree12ccbaf2bd5ddd2edd5c49e4c6ca447e3a951c80
parent225d25aee57644b60681601243a6433dc8dcda42 (diff)
Fix GstByteReader bindings
-rw-r--r--gstreamer-sharp/ByteReader.custom35
-rw-r--r--gstreamer-sharp/Gstreamer.metadata33
-rw-r--r--gstreamer-sharp/Makefile.am3
3 files changed, 70 insertions, 1 deletions
diff --git a/gstreamer-sharp/ByteReader.custom b/gstreamer-sharp/ByteReader.custom
new file mode 100644
index 0000000..71bce84
--- /dev/null
+++ b/gstreamer-sharp/ByteReader.custom
@@ -0,0 +1,35 @@
+[DllImport ("libgstbase-0.10.dll", CallingConvention = CallingConvention.Cdecl) ]
+static extern bool gst_byte_reader_peek_data (IntPtr raw, uint size, out IntPtr val);
+
+public bool PeekData (uint size, out byte[] val) {
+ IntPtr raw_ret;
+
+ bool ret = gst_byte_reader_peek_data (Handle, size, out raw_ret);
+
+ if (!ret || raw_ret == IntPtr.Zero) {
+ val = null;
+ } else {
+ val = new byte[size];
+ Marshal.Copy (raw_ret, val, 0, (int) size);
+ }
+
+ return ret;
+}
+
+[DllImport ("libgstbase-0.10.dll", CallingConvention = CallingConvention.Cdecl) ]
+static extern bool gst_byte_reader_get_data (IntPtr raw, uint size, out IntPtr val);
+
+public bool GetData (uint size, out byte[] val) {
+ IntPtr raw_ret;
+
+ bool ret = gst_byte_reader_get_data (Handle, size, out raw_ret);
+
+ if (!ret || raw_ret == IntPtr.Zero) {
+ val = null;
+ } else {
+ val = new byte[size];
+ Marshal.Copy (raw_ret, val, 0, (int) size);
+ }
+
+ return ret;
+}
diff --git a/gstreamer-sharp/Gstreamer.metadata b/gstreamer-sharp/Gstreamer.metadata
index 8c96c30..70b3e00 100644
--- a/gstreamer-sharp/Gstreamer.metadata
+++ b/gstreamer-sharp/Gstreamer.metadata
@@ -1080,6 +1080,39 @@
<attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_init']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_init_from_buffer']" name="hidden">1</attr>
<attr path="/api/namespace/struct[@cname='GstByteReader']/constructor[@cname='gst_byte_reader_new']" name="hidden">1</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint8']" name="name">PeekUInt8</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint16_le']" name="name">PeekUInt16Le</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint16_be']" name="name">PeekUInt16Be</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint24_le']" name="name">PeekUInt24Le</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint24_be']" name="name">PeekUInt24Be</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint32_le']" name="name">PeekUInt32Le</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint32_be']" name="name">PeekUInt32Be</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint64_le']" name="name">PeekUint64Le</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_uint64_be']" name="name">PeekUInt64Be</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint8']" name="name">GetUInt8</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint16_le']" name="name">GetUInt16Le</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint16_be']" name="name">GetUInt16Be</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint24_le']" name="name">GetUInt24Le</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint24_be']" name="name">GetUInt24Be</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint32_le']" name="name">GetUInt32Le</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint32_be']" name="name">GetUInt32Be</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint64_le']" name="name">GetUint64Le</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_uint64_be']" name="name">GetUInt64Be</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_data']" name="hidden">1</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_dup_data']" name="hidden">1</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_data']" name="hidden">1</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_dup_string_utf8']" name="hidden">1</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_dup_string_utf16']" name="hidden">1</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_skip_string_utf16']" name="hidden">1</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_dup_string_utf32']" name="hidden">1</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_skip_string_utf32']" name="hidden">1</attr>
+
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_skip_string_utf8']" name="name">SkipString</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_string_utf8']" name="name">GetString</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_get_string_utf8']/parameters/parameter[@name='str']" name="pass_as">out</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_string_utf8']" name="name">PeekString</attr>
+ <attr path="/api/namespace/struct[@cname='GstByteReader']/method[@cname='gst_byte_reader_peek_string_utf8']/parameters/parameter[@name='str']" name="pass_as">out</attr>
+
<!-- FIXME: Why can't this be parsed?! -->
<add-node path="/api/namespace[@name='Gst.Base']">
diff --git a/gstreamer-sharp/Makefile.am b/gstreamer-sharp/Makefile.am
index b0e1dc6..d4d2786 100644
--- a/gstreamer-sharp/Makefile.am
+++ b/gstreamer-sharp/Makefile.am
@@ -114,7 +114,8 @@ customs = \
Adapter.custom \
Controller.custom \
ControlSource.custom \
- VideoUtil.custom
+ VideoUtil.custom \
+ ByteReader.custom
plugin_csfiles = $(builddir)/coreplugins/generated/*.cs \
$(builddir)/baseplugins/generated/*.cs