mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-23 10:11:08 +00:00
API: Add gst_byte_reader_get_data and gst_byte_reader_peek_data to get a pointer to the data at the current position ...
Original commit message from CVS: * docs/libs/gstreamer-libs-sections.txt: * libs/gst/base/gstbytereader.c: (gst_byte_reader_get_data), (gst_byte_reader_peek_data): * libs/gst/base/gstbytereader.h: * win32/common/libgstbase.def: API: Add gst_byte_reader_get_data and gst_byte_reader_peek_data to get a pointer to the data at the current position and have a guaranteed size.
This commit is contained in:
parent
d2c33f6d79
commit
61ee0f414a
5 changed files with 80 additions and 0 deletions
11
ChangeLog
11
ChangeLog
|
@ -1,3 +1,14 @@
|
|||
2008-10-22 Sebastian Dröge <slomo@circular-chaos.org>
|
||||
|
||||
* docs/libs/gstreamer-libs-sections.txt:
|
||||
* libs/gst/base/gstbytereader.c: (gst_byte_reader_get_data),
|
||||
(gst_byte_reader_peek_data):
|
||||
* libs/gst/base/gstbytereader.h:
|
||||
* win32/common/libgstbase.def:
|
||||
API: Add gst_byte_reader_get_data and gst_byte_reader_peek_data
|
||||
to get a pointer to the data at the current position and have
|
||||
a guaranteed size.
|
||||
|
||||
2008-10-22 Jan Schmidt <jan.schmidt@sun.com>
|
||||
|
||||
* configure.ac:
|
||||
|
|
|
@ -440,6 +440,9 @@ gst_byte_reader_peek_float32_le
|
|||
gst_byte_reader_peek_float32_be
|
||||
gst_byte_reader_peek_float64_le
|
||||
gst_byte_reader_peek_float64_be
|
||||
|
||||
gst_byte_reader_get_data
|
||||
gst_byte_reader_peek_data
|
||||
</SECTION>
|
||||
|
||||
<SECTION>
|
||||
|
|
|
@ -1211,3 +1211,64 @@ gst_byte_reader_peek_float##bits##_be (GstByteReader *reader, g##type *val) \
|
|||
|
||||
GST_BYTE_READER_READ_FLOATS (32, float, FLOAT);
|
||||
GST_BYTE_READER_READ_FLOATS (64, double, DOUBLE);
|
||||
|
||||
/**
|
||||
* gst_byte_reader_get_data:
|
||||
* @reader: a #GstByteReader instance
|
||||
* @size: Size in bytes
|
||||
* @val: Pointer to a #guint8 to store the result
|
||||
*
|
||||
* Returns a constant pointer to the current data
|
||||
* position if at least @size bytes are left and
|
||||
* updates the current position.
|
||||
*
|
||||
*
|
||||
* Returns: %TRUE if successful, %FALSE otherwise.
|
||||
*
|
||||
* Since: 0.10.22
|
||||
*/
|
||||
|
||||
/**
|
||||
* gst_byte_reader_peek_data:
|
||||
* @reader: a #GstByteReader instance
|
||||
* @size: Size in bytes
|
||||
* @val: Pointer to a #guint8 to store the result
|
||||
*
|
||||
* Returns a constant pointer to the current data
|
||||
* position if at least @size bytes are left and
|
||||
* keeps the current position.
|
||||
*
|
||||
*
|
||||
* Returns: %TRUE if successful, %FALSE otherwise.
|
||||
*
|
||||
* Since: 0.10.22
|
||||
*/
|
||||
|
||||
gboolean
|
||||
gst_byte_reader_get_data (GstByteReader * reader, guint size,
|
||||
const guint8 ** val)
|
||||
{
|
||||
g_return_val_if_fail (reader != NULL, FALSE);
|
||||
g_return_val_if_fail (val != NULL, FALSE);
|
||||
|
||||
if (reader->byte + size > reader->size)
|
||||
return FALSE;
|
||||
|
||||
*val = reader->data + reader->byte;
|
||||
reader->byte += size;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
gst_byte_reader_peek_data (GstByteReader * reader, guint size,
|
||||
const guint8 ** val)
|
||||
{
|
||||
g_return_val_if_fail (reader != NULL, FALSE);
|
||||
g_return_val_if_fail (val != NULL, FALSE);
|
||||
|
||||
if (reader->byte + size > reader->size)
|
||||
return FALSE;
|
||||
|
||||
*val = reader->data + reader->byte;
|
||||
return TRUE;
|
||||
}
|
||||
|
|
|
@ -102,6 +102,9 @@ gboolean gst_byte_reader_peek_float32_be (GstByteReader *reader, gfloat *val);
|
|||
gboolean gst_byte_reader_peek_float64_le (GstByteReader *reader, gdouble *val);
|
||||
gboolean gst_byte_reader_peek_float64_be (GstByteReader *reader, gdouble *val);
|
||||
|
||||
gboolean gst_byte_reader_get_data (GstByteReader *reader, guint size, const guint8 **val);
|
||||
gboolean gst_byte_reader_peek_data (GstByteReader *reader, guint size, const guint8 **val);
|
||||
|
||||
/**
|
||||
* GST_BYTE_READER_INIT:
|
||||
* @data: Data from which the #GstByteReader should read
|
||||
|
|
|
@ -72,6 +72,7 @@ EXPORTS
|
|||
gst_bit_reader_skip
|
||||
gst_bit_reader_skip_to_byte
|
||||
gst_byte_reader_free
|
||||
gst_byte_reader_get_data
|
||||
gst_byte_reader_get_float32_be
|
||||
gst_byte_reader_get_float32_le
|
||||
gst_byte_reader_get_float64_be
|
||||
|
@ -100,6 +101,7 @@ EXPORTS
|
|||
gst_byte_reader_init_from_buffer
|
||||
gst_byte_reader_new
|
||||
gst_byte_reader_new_from_buffer
|
||||
gst_byte_reader_peek_data
|
||||
gst_byte_reader_peek_float32_be
|
||||
gst_byte_reader_peek_float32_le
|
||||
gst_byte_reader_peek_float64_be
|
||||
|
|
Loading…
Reference in a new issue