--- a/gstreamer_core/gst/gstmessage.h Tue Aug 31 15:30:33 2010 +0300
+++ b/gstreamer_core/gst/gstmessage.h Wed Sep 01 12:16:41 2010 +0100
@@ -58,8 +58,8 @@
* unusable. The pipeline will select a new clock on
* the next PLAYING state change.
* @GST_MESSAGE_NEW_CLOCK: a new clock was selected in the pipeline.
- * @GST_MESSAGE_STRUCTURE_CHANGE: the structure of the pipeline changed. This
- * message is used internally and never forwarded to the application.
+ * @GST_MESSAGE_STRUCTURE_CHANGE: the structure of the pipeline changed. Not
+ * implemented yet.
* @GST_MESSAGE_STREAM_STATUS: status about a stream, emitted when it starts,
* stops, errors, etc.. Not implemented yet.
* @GST_MESSAGE_APPLICATION: message posted by the application, possibly
@@ -81,10 +81,6 @@
* pipeline. Since: 0.10.13
* @GST_MESSAGE_LATENCY: Posted by elements when their latency changes. The
* pipeline will calculate and distribute a new latency. Since: 0.10.12
- * @GST_MESSAGE_REQUEST_STATE: Posted by elements when they want the pipeline to
- * change state. This message is a suggestion to the application which can
- * decide to perform the state change on (part of) the pipeline. Since: 0.10.23.
- * @GST_MESSAGE_STEP_START: A stepping operation was started.
* @GST_MESSAGE_ANY: mask for all of the above messages.
*
* The different message types that are available.
@@ -117,8 +113,6 @@
GST_MESSAGE_LATENCY = (1 << 19),
GST_MESSAGE_ASYNC_START = (1 << 20),
GST_MESSAGE_ASYNC_DONE = (1 << 21),
- GST_MESSAGE_REQUEST_STATE = (1 << 22),
- GST_MESSAGE_STEP_START = (1 << 23),
GST_MESSAGE_ANY = ~0
} GstMessageType;
@@ -184,57 +178,6 @@
* Get the object that posted @message.
*/
#define GST_MESSAGE_SRC(message) (GST_MESSAGE(message)->src)
-/**
- * GST_MESSAGE_SRC_NAME:
- * @message: a #GstMessage
- *
- * Get the name of the object that posted @message. Returns "(NULL)" if
- * the message has no source object set.
- *
- * Since: 0.10.24
- */
-#define GST_MESSAGE_SRC_NAME(message) (GST_MESSAGE_SRC(message) ? \
- GST_OBJECT_NAME (GST_MESSAGE_SRC(message)) : "(NULL)")
-
-/**
- * GstStructureChangeType:
- * @GST_STRUCTURE_CHANGE_TYPE_PAD_LINK: Pad linking is starting or done.
- * @GST_STRUCTURE_CHANGE_TYPE_PAD_UNLINK: Pad unlinking is starting or done.
- *
- * The type of a #GstMessageStructureChange.
- *
- * Since: 0.10.22
- */
-typedef enum {
- GST_STRUCTURE_CHANGE_TYPE_PAD_LINK = 0,
- GST_STRUCTURE_CHANGE_TYPE_PAD_UNLINK = 1
-} GstStructureChangeType;
-
-/**
- * GstStreamStatusType:
- * @GST_STREAM_STATUS_TYPE_CREATE: A new thread need to be created.
- * @GST_STREAM_STATUS_TYPE_ENTER: a thread entered its loop function
- * @GST_STREAM_STATUS_TYPE_LEAVE: a thread left its loop function
- * @GST_STREAM_STATUS_TYPE_DESTROY: a thread is destroyed
- * @GST_STREAM_STATUS_TYPE_START: a thread is started
- * @GST_STREAM_STATUS_TYPE_PAUSE: a thread is paused
- * @GST_STREAM_STATUS_TYPE_STOP: a thread is stopped
- *
- * The type of a #GstMessageStreamStatus. The stream status messages inform the
- * application of new streaming threads and their status.
- *
- * Since: 0.10.24
- */
-typedef enum {
- GST_STREAM_STATUS_TYPE_CREATE = 0,
- GST_STREAM_STATUS_TYPE_ENTER = 1,
- GST_STREAM_STATUS_TYPE_LEAVE = 2,
- GST_STREAM_STATUS_TYPE_DESTROY = 3,
-
- GST_STREAM_STATUS_TYPE_START = 8,
- GST_STREAM_STATUS_TYPE_PAUSE = 9,
- GST_STREAM_STATUS_TYPE_STOP = 10
-} GstStreamStatusType;
/**
* GstMessage:
@@ -250,7 +193,7 @@
{
GstMiniObject mini_object;
- /*< private >*//* with MESSAGE_LOCK */
+ /*< private > *//* with MESSAGE_LOCK */
GMutex *lock; /* lock and cond for async delivery */
GCond *cond;
@@ -261,20 +204,14 @@
GstStructure *structure;
- /*< private >*/
- union {
- struct {
- guint32 seqnum;
- } ABI;
- /* + 0 to mark ABI change for future greppage */
- gpointer _gst_reserved[GST_PADDING + 0];
- } abidata;
+ /*< private > */
+ gpointer _gst_reserved[GST_PADDING];
};
struct _GstMessageClass {
GstMiniObjectClass mini_object_class;
- /*< private >*/
+ /*< private > */
gpointer _gst_reserved[GST_PADDING];
};
#ifdef __SYMBIAN32__
@@ -311,6 +248,8 @@
static inline GstMessage *
gst_message_ref (GstMessage * msg)
{
+ /* not using a macro here because gcc-4.1 will complain
+ * if the return value isn't used (because of the cast) */
return (GstMessage *) gst_mini_object_ref (GST_MINI_OBJECT (msg));
}
@@ -321,16 +260,7 @@
* Convenience macro to decrease the reference count of the message, possibly
* freeing it.
*/
-#ifdef _FOOL_GTK_DOC_
-G_INLINE_FUNC void gst_message_unref (GstMessage * msg);
-#endif
-
-static inline void
-gst_message_unref (GstMessage * msg)
-{
- gst_mini_object_unref (GST_MINI_OBJECT_CAST (msg));
-}
-
+#define gst_message_unref(msg) gst_mini_object_unref (GST_MINI_OBJECT (msg))
/* copy message */
/**
* gst_message_copy:
@@ -338,20 +268,9 @@
*
* Creates a copy of the message. Returns a copy of the message.
*
- * Returns: a new copy of @msg.
- *
* MT safe
*/
-#ifdef _FOOL_GTK_DOC_
-G_INLINE_FUNC GstMessage * gst_message_copy (const GstMessage * msg);
-#endif
-
-static inline GstMessage *
-gst_message_copy (const GstMessage * msg)
-{
- return GST_MESSAGE (gst_mini_object_copy (GST_MINI_OBJECT_CAST (msg)));
-}
-
+#define gst_message_copy(msg) GST_MESSAGE (gst_mini_object_copy (GST_MINI_OBJECT (msg)))
/**
* gst_message_make_writable:
* @msg: the message to make writable
@@ -363,63 +282,22 @@
*/
#define gst_message_make_writable(msg) GST_MESSAGE (gst_mini_object_make_writable (GST_MINI_OBJECT (msg)))
-/* identifiers for events and messages */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-guint32 gst_message_get_seqnum (GstMessage *message);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_set_seqnum (GstMessage *message, guint32 seqnum);
-
-/* EOS */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_eos (GstObject * src);
-
-/* ERROR */
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-
-GstMessage * gst_message_new_error (GstObject * src, GError * error, const gchar * debug);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_error (GstMessage *message, GError **gerror, gchar **debug);
-
-/* WARNING */
+GstMessage * gst_message_new_error (GstObject * src, GError * error, gchar * debug);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-GstMessage * gst_message_new_warning (GstObject * src, GError * error, const gchar * debug);
+GstMessage * gst_message_new_warning (GstObject * src, GError * error, gchar * debug);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-void gst_message_parse_warning (GstMessage *message, GError **gerror, gchar **debug);
-
-/* INFO */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-GstMessage * gst_message_new_info (GstObject * src, GError * error, const gchar * debug);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_info (GstMessage *message, GError **gerror, gchar **debug);
-
-/* TAG */
+GstMessage * gst_message_new_info (GstObject * src, GError * error, gchar * debug);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
@@ -429,45 +307,7 @@
IMPORT_C
#endif
-GstMessage * gst_message_new_tag_full (GstObject * src, GstPad *pad, GstTagList * tag_list);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_tag (GstMessage *message, GstTagList **tag_list);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_tag_full (GstMessage *message, GstPad **pad, GstTagList **tag_list);
-
-/* BUFFERING */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-GstMessage * gst_message_new_buffering (GstObject * src, gint percent);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_buffering (GstMessage *message, gint *percent);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_set_buffering_stats (GstMessage *message, GstBufferingMode mode,
- gint avg_in, gint avg_out,
- gint64 buffering_left);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_buffering_stats (GstMessage *message, GstBufferingMode *mode,
- gint *avg_in, gint *avg_out,
- gint64 *buffering_left);
-
-/* STATE_CHANGED */
+GstMessage * gst_message_new_buffering (GstObject * src, gint percent);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
@@ -478,32 +318,7 @@
IMPORT_C
#endif
-void gst_message_parse_state_changed (GstMessage *message, GstState *oldstate,
- GstState *newstate, GstState *pending);
-
-/* STATE_DIRTY */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_state_dirty (GstObject * src);
-
-/* STEP_DONE */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-GstMessage * gst_message_new_step_done (GstObject * src, GstFormat format, guint64 amount,
- gdouble rate, gboolean flush, gboolean intermediate,
- guint64 duration, gboolean eos);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_step_done (GstMessage * message, GstFormat *format, guint64 *amount,
- gdouble *rate, gboolean *flush, gboolean *intermediate,
- guint64 *duration, gboolean *eos);
-/* CLOCK_PROVIDE */
#ifdef __SYMBIAN32__
IMPORT_C
#endif
@@ -513,48 +328,22 @@
IMPORT_C
#endif
-void gst_message_parse_clock_provide (GstMessage *message, GstClock **clock,
- gboolean *ready);
-
-/* CLOCK_LOST */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_clock_lost (GstObject * src, GstClock *clock);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-void gst_message_parse_clock_lost (GstMessage *message, GstClock **clock);
-
-/* NEW_CLOCK */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_new_clock (GstObject * src, GstClock *clock);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-void gst_message_parse_new_clock (GstMessage *message, GstClock **clock);
-
-/* APPLICATION */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_application (GstObject * src, GstStructure * structure);
-
-/* ELEMENT */
#ifdef __SYMBIAN32__
IMPORT_C
#endif
GstMessage * gst_message_new_element (GstObject * src, GstStructure * structure);
-
-/* SEGMENT_START */
#ifdef __SYMBIAN32__
IMPORT_C
#endif
@@ -564,128 +353,27 @@
IMPORT_C
#endif
-void gst_message_parse_segment_start (GstMessage *message, GstFormat *format,
- gint64 *position);
-
-/* SEGMENT_DONE */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_segment_done (GstObject * src, GstFormat format, gint64 position);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-void gst_message_parse_segment_done (GstMessage *message, GstFormat *format,
- gint64 *position);
-
-/* DURATION */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_duration (GstObject * src, GstFormat format, gint64 duration);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-void gst_message_parse_duration (GstMessage *message, GstFormat *format,
- gint64 *duration);
-
-/* LATENCY */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-GstMessage * gst_message_new_latency (GstObject * src);
-
-/* ASYNC_START */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_async_start (GstObject * src, gboolean new_base_time);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-void gst_message_parse_async_start (GstMessage *message, gboolean *new_base_time);
-
-/* ASYNC_DONE */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
GstMessage * gst_message_new_async_done (GstObject * src);
-
-/* STRUCTURE CHANGE */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-GstMessage * gst_message_new_structure_change (GstObject * src, GstStructureChangeType type,
- GstElement *owner, gboolean busy);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_structure_change (GstMessage *message, GstStructureChangeType *type,
- GstElement **owner, gboolean *busy);
-
-/* STREAM STATUS */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-GstMessage * gst_message_new_stream_status (GstObject * src, GstStreamStatusType type,
- GstElement *owner);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
-void gst_message_parse_stream_status (GstMessage *message, GstStreamStatusType *type,
- GstElement **owner);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_set_stream_status_object (GstMessage *message, const GValue *object);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-const GValue * gst_message_get_stream_status_object (GstMessage *message);
-
-/* REQUEST_STATE */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-GstMessage * gst_message_new_request_state (GstObject * src, GstState state);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_request_state (GstMessage * message, GstState *state);
-
-/* STEP_START */
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-GstMessage * gst_message_new_step_start (GstObject * src, gboolean active, GstFormat format,
- guint64 amount, gdouble rate, gboolean flush,
- gboolean intermediate);
-#ifdef __SYMBIAN32__
-IMPORT_C
-#endif
-
-void gst_message_parse_step_start (GstMessage * message, gboolean *active, GstFormat *format,
- guint64 *amount, gdouble *rate, gboolean *flush,
- gboolean *intermediate);
-
-/* custom messages */
+GstMessage * gst_message_new_latency (GstObject * src);
#ifdef __SYMBIAN32__
IMPORT_C
#endif
@@ -697,6 +385,74 @@
IMPORT_C
#endif
+
+void gst_message_parse_error (GstMessage *message, GError **gerror, gchar **debug);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_warning (GstMessage *message, GError **gerror, gchar **debug);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_info (GstMessage *message, GError **gerror, gchar **debug);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_tag (GstMessage *message, GstTagList **tag_list);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_buffering (GstMessage *message, gint *percent);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_state_changed (GstMessage *message, GstState *oldstate,
+ GstState *newstate, GstState *pending);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_clock_provide (GstMessage *message, GstClock **clock, gboolean *ready);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_clock_lost (GstMessage *message, GstClock **clock);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_new_clock (GstMessage *message, GstClock **clock);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_segment_start (GstMessage *message, GstFormat *format, gint64 *position);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_segment_done (GstMessage *message, GstFormat *format, gint64 *position);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_duration (GstMessage *message, GstFormat *format, gint64 *duration);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+void gst_message_parse_async_start (GstMessage *message, gboolean *new_base_time);
+#ifdef __SYMBIAN32__
+IMPORT_C
+#endif
+
+
const GstStructure * gst_message_get_structure (GstMessage *message);
G_END_DECLS