docs/gst/gstreamer-sections.txt: Update.
authorAndy Wingo <wingo@pobox.com>
Fri, 7 Oct 2005 16:13:51 +0000 (16:13 +0000)
committerAndy Wingo <wingo@pobox.com>
Fri, 7 Oct 2005 16:13:51 +0000 (16:13 +0000)
Original commit message from CVS:
2005-10-07  Andy Wingo  <wingo@pobox.com>

* docs/gst/gstreamer-sections.txt: Update.

* gst/gstmessage.c (gst_message_new_application): Made into a
function like honest API calls.
(gst_message_new_element): New message type.

* gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.

ChangeLog
docs/gst/gstreamer-sections.txt
gst/gstmessage.c
gst/gstmessage.h

index 4469309..2453b7f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
 2005-10-07  Andy Wingo  <wingo@pobox.com>
 
+       * docs/gst/gstreamer-sections.txt: Update.
+
+       * gst/gstmessage.c (gst_message_new_application): Made into a
+       function like honest API calls.
+       (gst_message_new_element): New message type.
+
+       * gst/gstmessage.h (enum): Add GST_MESSAGE_ELEMENT type.
+
        * check/elements/fakesrc.c (test_no_preroll): New check, checks
        that setting a live fakesrc to PAUSED returns NO_PREROLL both
        times.
index 68bc10b..646ef1f 100644 (file)
@@ -621,6 +621,8 @@ GST_EVDIR_BOTH
 GST_EVDIR_DS
 GST_EVDIR_US
 
+gst_event_type_get_name
+gst_event_type_to_quark
 gst_event_ref
 gst_event_unref
 gst_event_copy
@@ -980,6 +982,7 @@ gst_message_copy
 gst_message_get_structure
 gst_message_make_writable
 gst_message_new_application
+gst_message_new_element
 gst_message_new_custom
 gst_message_new_eos
 gst_message_new_error
index ae4b97d..6448292 100644 (file)
@@ -439,6 +439,42 @@ gst_message_new_segment_done (GstObject * src, GstClockTime timestamp)
 }
 
 /**
+ * gst_message_new_application:
+ * @src: The object originating the message.
+ * @structure: The structure for the message. The message will take ownership of
+ * the structure.
+ *
+ * Create a new application-typed message. GStreamer will never create these
+ * messages; they are a gift from us to you. Enjoy.
+ *
+ * MT safe.
+ */
+GstMessage *
+gst_message_new_application (GstObject * src, GstStructure * structure)
+{
+  return gst_message_new_custom (GST_MESSAGE_APPLICATION, src, structure);
+}
+
+/**
+ * gst_message_new_element:
+ * @src: The object originating the message.
+ * @structure: The structure for the message. The message will take ownership of
+ * the structure.
+ *
+ * Create a new element-specific message. This is meant as a generic way of
+ * allowing one-way communication from an element to an application, for example
+ * "the firewire cable was unplugged". The format of the message should be
+ * documented in the element's documentation. The structure field can be NULL.
+ *
+ * MT safe.
+ */
+GstMessage *
+gst_message_new_element (GstObject * src, GstStructure * structure)
+{
+  return gst_message_new_custom (GST_MESSAGE_ELEMENT, src, structure);
+}
+
+/**
  * gst_message_new_custom:
  * @type: The #GstMessageType to distinguish messages
  * @src: The object originating the message.
index 0eef079..f2be6a9 100644 (file)
@@ -44,6 +44,8 @@ typedef struct _GstMessageClass GstMessageClass;
  *                             stops, errors, etc..
  * @GST_MESSAGE_APPLICATION: message posted by the application, possibly
  *                           via an application-specific element.
+ * @GST_MESSAGE_ELEMENT: element-specific message, see the specific element's
+ *                       documentation
  * @GST_MESSAGE_SEGMENT_START: pipeline started playback of a segment.
  * @GST_MESSAGE_SEGMENT_DONE: pipeline completed playback of a segment.
  * @GST_MESSAGE_ANY: mask for all of the above messages.
@@ -63,8 +65,9 @@ typedef enum
   GST_MESSAGE_STRUCTURE_CHANGE  = (1 << 9),
   GST_MESSAGE_STREAM_STATUS     = (1 << 10),
   GST_MESSAGE_APPLICATION       = (1 << 11),
-  GST_MESSAGE_SEGMENT_START     = (1 << 12),
-  GST_MESSAGE_SEGMENT_DONE      = (1 << 13),
+  GST_MESSAGE_ELEMENT           = (1 << 12),
+  GST_MESSAGE_SEGMENT_START     = (1 << 13),
+  GST_MESSAGE_SEGMENT_DONE      = (1 << 14),
   GST_MESSAGE_ANY               = 0xffffffff
 } GstMessageType;
 
@@ -145,25 +148,12 @@ GstMessage *      gst_message_new_state_changed   (GstObject * src, GstState old_state
                                                  GstState new_state);
 GstMessage *   gst_message_new_segment_start   (GstObject * src, GstClockTime timestamp);
 GstMessage *   gst_message_new_segment_done    (GstObject * src, GstClockTime timestamp);
+GstMessage *   gst_message_new_application     (GstObject * src, GstStructure * structure);
+GstMessage *   gst_message_new_element         (GstObject * src, GstStructure * structure);
 GstMessage *   gst_message_new_custom          (GstMessageType type,
                                                 GstObject    * src,
                                                 GstStructure * structure);
 
-/**
- * gst_message_new_application:
- * @src: The object originating the message.
- * @str: The structure for the message. The message will take ownership of
- * the structure.
- *
- * Create a new application-typed message. This can be used for anything not
- * handled by other message-specific functions to pass a message to the
- * app. The structure field can be NULL.
- *
- * MT safe.
- */
-#define                gst_message_new_application(src, str) \
-  gst_message_new_custom (GST_MESSAGE_APPLICATION, src, str)
-
 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);