diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2005-10-18 16:25:38 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2005-10-18 16:25:38 +0000 |
commit | 0176d5a0cf5e3f87afbb8b73c27f81af3288f5a9 (patch) | |
tree | b0f4aaf3b630c70970f504f660e35d33f580e8c2 /gst/gstmessage.h | |
parent | 2c61a2f4d5c8738861d0a83e5cd1878d80edefc3 (diff) |
Seriously, this is better than a previous commit as we only need to notify the fact that an element changed state in ...
Original commit message from CVS:
* check/gst/gstbin.c: (GST_START_TEST):
* check/gst/gstmessage.c: (GST_START_TEST):
* check/gst/gstpipeline.c: (GST_START_TEST), (message_received):
* gst/gstbin.c: (gst_bin_class_init), (gst_bin_recalc_func),
(bin_bus_handler):
* gst/gstelement.c: (gst_element_abort_state),
(gst_element_commit_state), (gst_element_lost_state):
* gst/gstmessage.c: (gst_message_new_state_changed),
(gst_message_new_state_dirty), (gst_message_new_segment_start),
(gst_message_new_segment_done), (gst_message_new_duration),
(gst_message_parse_state_changed),
(gst_message_parse_segment_start),
(gst_message_parse_segment_done), (gst_message_parse_duration):
* gst/gstmessage.h:
* tools/gst-launch.c: (event_loop):
Seriously, this is better than a previous commit as we only need
to notify the fact that an element changed state in a streaming
thread, marking the state of the parents dirty, hence the
STATE_DIRTY message instead of abusing a boolean in a STATE_CHANGE
message.
Diffstat (limited to 'gst/gstmessage.h')
-rw-r--r-- | gst/gstmessage.h | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/gst/gstmessage.h b/gst/gstmessage.h index 2a1fcab7d..b95d0415c 100644 --- a/gst/gstmessage.h +++ b/gst/gstmessage.h @@ -67,17 +67,18 @@ typedef enum GST_MESSAGE_TAG = (1 << 4), GST_MESSAGE_BUFFERING = (1 << 5), GST_MESSAGE_STATE_CHANGED = (1 << 6), - GST_MESSAGE_STEP_DONE = (1 << 7), - GST_MESSAGE_CLOCK_PROVIDE = (1 << 8), - GST_MESSAGE_CLOCK_LOST = (1 << 9), - GST_MESSAGE_NEW_CLOCK = (1 << 10), - GST_MESSAGE_STRUCTURE_CHANGE = (1 << 11), - GST_MESSAGE_STREAM_STATUS = (1 << 12), - GST_MESSAGE_APPLICATION = (1 << 13), - GST_MESSAGE_ELEMENT = (1 << 14), - GST_MESSAGE_SEGMENT_START = (1 << 15), - GST_MESSAGE_SEGMENT_DONE = (1 << 16), - GST_MESSAGE_DURATION = (1 << 17), + GST_MESSAGE_STATE_DIRTY = (1 << 7), + GST_MESSAGE_STEP_DONE = (1 << 8), + GST_MESSAGE_CLOCK_PROVIDE = (1 << 9), + GST_MESSAGE_CLOCK_LOST = (1 << 10), + GST_MESSAGE_NEW_CLOCK = (1 << 11), + GST_MESSAGE_STRUCTURE_CHANGE = (1 << 12), + GST_MESSAGE_STREAM_STATUS = (1 << 13), + GST_MESSAGE_APPLICATION = (1 << 14), + GST_MESSAGE_ELEMENT = (1 << 15), + GST_MESSAGE_SEGMENT_START = (1 << 16), + GST_MESSAGE_SEGMENT_DONE = (1 << 17), + GST_MESSAGE_DURATION = (1 << 18), GST_MESSAGE_ANY = 0xffffffff } GstMessageType; @@ -190,8 +191,9 @@ GstMessage * gst_message_new_eos (GstObject * src); GstMessage * gst_message_new_error (GstObject * src, GError * error, gchar * debug); GstMessage * gst_message_new_warning (GstObject * src, GError * error, gchar * debug); GstMessage * gst_message_new_tag (GstObject * src, GstTagList * tag_list); -GstMessage * gst_message_new_state_changed (GstObject * src, gboolean async, GstState oldstate, +GstMessage * gst_message_new_state_changed (GstObject * src, GstState oldstate, GstState newstate, GstState pending); +GstMessage * gst_message_new_state_dirty (GstObject * src); GstMessage * gst_message_new_clock_provide (GstObject * src, GstClock *clock, gboolean ready); GstMessage * gst_message_new_clock_lost (GstObject * src, GstClock *clock); GstMessage * gst_message_new_new_clock (GstObject * src, GstClock *clock); @@ -207,7 +209,7 @@ GstMessage * gst_message_new_custom (GstMessageType type, void gst_message_parse_error (GstMessage *message, GError **gerror, gchar **debug); void gst_message_parse_warning (GstMessage *message, GError **gerror, gchar **debug); void gst_message_parse_tag (GstMessage *message, GstTagList **tag_list); -void gst_message_parse_state_changed (GstMessage *message, gboolean *async, GstState *oldstate, +void gst_message_parse_state_changed (GstMessage *message, GstState *oldstate, GstState *newstate, GstState *pending); void gst_message_parse_clock_provide (GstMessage *message, GstClock **clock, gboolean *ready); void gst_message_parse_clock_lost (GstMessage *message, GstClock **clock); |