gdp: Hide the GstStructure in GstEvent

Hide the GstStructure of the event in the implementation specific part so that
we can change it.
Add methods to check and make the event writable.
Add a new method to get a writable GstStructure of the element.
Avoid directly accising the event structure.
This commit is contained in:
Wim Taymans 2011-05-10 11:50:16 +02:00 committed by Tim-Philipp Müller
parent 536f51cf98
commit b4305c56f5

View file

@ -394,6 +394,7 @@ gst_dp_packet_from_event_1_0 (const GstEvent * event, GstDPHeaderFlag flags,
guint8 *h;
guint32 pl_length; /* length of payload */
guchar *string = NULL;
const GstStructure *structure;
g_return_val_if_fail (GST_IS_EVENT (event), FALSE);
g_return_val_if_fail (length, FALSE);
@ -403,8 +404,9 @@ gst_dp_packet_from_event_1_0 (const GstEvent * event, GstDPHeaderFlag flags,
*length = GST_DP_HEADER_LENGTH;
h = g_malloc0 (GST_DP_HEADER_LENGTH);
if (event->structure) {
string = (guchar *) gst_structure_to_string (event->structure);
structure = gst_event_get_structure ((GstEvent *) event);
if (structure) {
string = (guchar *) gst_structure_to_string (structure);
GST_LOG ("event %p has structure, string %s", event, string);
pl_length = strlen ((gchar *) string) + 1; /* include trailing 0 */
} else {