From: <sl...@ke...> - 2008-10-23 07:12:14
|
CVS Root: /cvs/gstreamer Module: gstreamer Changes by: slomo Date: Thu Oct 23 2008 07:12:08 UTC Log message: * libs/gst/base/gstbytereader.c: Use GST_(READ|WRITE)_(FLOAT|DOUBLE)_(LE|BE) instead of our own copies of them. Modified files: . : ChangeLog libs/gst/base : gstbytereader.c Links: http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/ChangeLog.diff?r1=1.4120&r2=1.4121 http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/libs/gst/base/gstbytereader.c.diff?r1=1.4&r2=1.5 ====Begin Diffs==== Index: ChangeLog =================================================================== RCS file: /cvs/gstreamer/gstreamer/ChangeLog,v retrieving revision 1.4120 retrieving revision 1.4121 diff -u -d -r1.4120 -r1.4121 --- ChangeLog 23 Oct 2008 07:09:18 -0000 1.4120 +++ ChangeLog 23 Oct 2008 07:11:53 -0000 1.4121 @@ -1,5 +1,11 @@ 2008-10-23 Sebastian Dröge <seb...@co...> + * libs/gst/base/gstbytereader.c: + Use GST_(READ|WRITE)_(FLOAT|DOUBLE)_(LE|BE) instead of our own + copies of them. + +2008-10-23 Sebastian Dröge <seb...@co...> * docs/gst/gstreamer-sections.txt: * gst/gstutils.h: API: Move float endianness conversion macros from libgstfloatcast Index: gstbytereader.c RCS file: /cvs/gstreamer/gstreamer/libs/gst/base/gstbytereader.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- gstbytereader.c 22 Oct 2008 14:47:04 -0000 1.4 +++ gstbytereader.c 23 Oct 2008 07:11:54 -0000 1.5 @@ -37,59 +37,6 @@ * 32 and 64 bits. */ - -/* Copied from gst/floatcast/floatcast.h as this is in gst-plugins-base */ -inline static gdouble -GDOUBLE_SWAP_LE_BE (gdouble in) -{ - union - { - guint64 i; - gdouble d; - } u; - u.d = in; - u.i = GUINT64_SWAP_LE_BE (u.i); - return u.d; -} -inline static gfloat -GFLOAT_SWAP_LE_BE (gfloat in) - guint32 i; - gfloat f; - u.f = in; - u.i = GUINT32_SWAP_LE_BE (u.i); - return u.f; -#if G_BYTE_ORDER == G_LITTLE_ENDIAN -#define GFLOAT_TO_LE(val) ((gfloat) (val)) -#define GFLOAT_TO_BE(val) (GFLOAT_SWAP_LE_BE (val)) -#define GDOUBLE_TO_LE(val) ((gdouble) (val)) -#define GDOUBLE_TO_BE(val) (GDOUBLE_SWAP_LE_BE (val)) -#elif G_BYTE_ORDER == G_BIG_ENDIAN -#define GFLOAT_TO_LE(val) (GFLOAT_SWAP_LE_BE (val)) -#define GFLOAT_TO_BE(val) ((gfloat) (val)) -#define GDOUBLE_TO_LE(val) (GDOUBLE_SWAP_LE_BE (val)) -#define GDOUBLE_TO_BE(val) ((gdouble) (val)) -#else /* !G_LITTLE_ENDIAN && !G_BIG_ENDIAN */ -#error unknown ENDIAN type -#endif /* !G_LITTLE_ENDIAN && !G_BIG_ENDIAN */ -#define GFLOAT_FROM_LE(val) (GFLOAT_TO_LE (val)) -#define GFLOAT_FROM_BE(val) (GFLOAT_TO_BE (val)) -#define GDOUBLE_FROM_LE(val) (GDOUBLE_TO_LE (val)) -#define GDOUBLE_FROM_BE(val) (GDOUBLE_TO_BE (val)) /** * gst_byte_reader_new: * @data: Data from which the #GstByteReader should read @@ -1149,63 +1096,51 @@ gboolean \ gst_byte_reader_get_float##bits##_le (GstByteReader *reader, g##type *val) \ { \ - g##type ret; \ - \ g_return_val_if_fail (reader != NULL, FALSE); \ g_return_val_if_fail (val != NULL, FALSE); \ \ if (reader->byte + bits / 8 > reader->size) \ return FALSE; \ - memcpy (&ret, &reader->data[reader->byte], bits / 8); \ - *val = G##TYPE##_FROM_LE (ret); \ + *val = GST_READ_##TYPE##_LE (&reader->data[reader->byte]); \ reader->byte += bits / 8; \ return TRUE; \ } \ gst_byte_reader_get_float##bits##_be (GstByteReader *reader, g##type *val) \ - *val = G##TYPE##_FROM_BE (ret); \ + *val = GST_READ_##TYPE##_BE (&reader->data[reader->byte]); \ gst_byte_reader_peek_float##bits##_le (GstByteReader *reader, g##type *val) \ gst_byte_reader_peek_float##bits##_be (GstByteReader *reader, g##type *val) \ } |