gstreamer_core/gst/gstelement.h
branchRCL_3
changeset 30 7e817e7e631c
parent 29 567bb019e3e3
equal deleted inserted replaced
29:567bb019e3e3 30:7e817e7e631c
   261  * Get the pads of this elements.
   261  * Get the pads of this elements.
   262  */
   262  */
   263 #define GST_ELEMENT_PADS(elem)			(GST_ELEMENT_CAST(elem)->pads)
   263 #define GST_ELEMENT_PADS(elem)			(GST_ELEMENT_CAST(elem)->pads)
   264 
   264 
   265 /**
   265 /**
   266  * GST_ELEMENT_START_TIME:
       
   267  * @elem: a #GstElement to return the start time for.
       
   268  *
       
   269  * This macro returns the start_time of the @elem. The start_time is the
       
   270  * running_time of the pipeline when the element went to PAUSED.
       
   271  *
       
   272  * Since: 0.10.24
       
   273  */
       
   274 #define GST_ELEMENT_START_TIME(elem)		(GST_ELEMENT_CAST(elem)->abidata.ABI.start_time)
       
   275 
       
   276 /**
       
   277  * GST_ELEMENT_ERROR:
   266  * GST_ELEMENT_ERROR:
   278  * @el:     the element that generates the error
   267  * @el:     the element that generates the error
   279  * @domain: like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError)
   268  * @domain: like CORE, LIBRARY, RESOURCE or STREAM (see #GstGError)
   280  * @code:   error code defined for that domain (see #gstreamer-GstGError)
   269  * @code:   error code defined for that domain (see #GstGError)
   281  * @text:   the message to display (format string and args enclosed in
   270  * @text:   the message to display (format string and args enclosed in
   282             parentheses)
   271             parentheses)
   283  * @debug:  debugging information for the message (format string and args
   272  * @debug:  debugging information for the message (format string and args
   284             enclosed in parentheses)
   273             enclosed in parentheses)
   285  *
   274  *
   403  * parent element or the application. A #GstPipeline has a bus of its own.
   392  * parent element or the application. A #GstPipeline has a bus of its own.
   404  * @clock: the clock of the element. This clock is usually provided by to the
   393  * @clock: the clock of the element. This clock is usually provided by to the
   405  * element by the toplevel #GstPipeline.
   394  * element by the toplevel #GstPipeline.
   406  * @base_time: the time of the clock right before the element is set to
   395  * @base_time: the time of the clock right before the element is set to
   407  * PLAYING. Subtracting @base_time from the current clock time in the PLAYING
   396  * PLAYING. Subtracting @base_time from the current clock time in the PLAYING
   408  * state will yield the running_time against the clock.
   397  * state will yield the stream time.
   409  * @numpads: number of pads of the element, includes both source and sink pads.
   398  * @numpads: number of pads of the element, includes both source and sink pads.
   410  * @pads: list of pads
   399  * @pads: list of pads
   411  * @numsrcpads: number of source pads of the element.
   400  * @numsrcpads: number of source pads of the element.
   412  * @srcpads: list of source pads
   401  * @srcpads: list of source pads
   413  * @numsinkpads: number of sink pads of the element.
   402  * @numsinkpads: number of sink pads of the element.
   450   /*< private >*/
   439   /*< private >*/
   451   union {
   440   union {
   452     struct {
   441     struct {
   453       /* state set by application */
   442       /* state set by application */
   454       GstState              target_state;
   443       GstState              target_state;
   455       /* running time of the last PAUSED state */
       
   456       GstClockTime          start_time;
       
   457     } ABI;
   444     } ABI;
   458     /* adding + 0 to mark ABI change to be undone later */
   445     /* adding + 0 to mark ABI change to be undone later */
   459     gpointer _gst_reserved[GST_PADDING + 0];
   446     gpointer _gst_reserved[GST_PADDING + 0];
   460   } abidata;
   447   } abidata;
   461 };
   448 };
   649 #ifdef __SYMBIAN32__
   636 #ifdef __SYMBIAN32__
   650 IMPORT_C
   637 IMPORT_C
   651 #endif
   638 #endif
   652 
   639 
   653 GstClockTime		gst_element_get_base_time	(GstElement *element);
   640 GstClockTime		gst_element_get_base_time	(GstElement *element);
   654 #ifdef __SYMBIAN32__
       
   655 IMPORT_C
       
   656 #endif
       
   657 
       
   658 void			gst_element_set_start_time	(GstElement *element, GstClockTime time);
       
   659 #ifdef __SYMBIAN32__
       
   660 IMPORT_C
       
   661 #endif
       
   662 
       
   663 GstClockTime		gst_element_get_start_time	(GstElement *element);
       
   664 
   641 
   665 /* indexes */
   642 /* indexes */
   666 #ifdef __SYMBIAN32__
   643 #ifdef __SYMBIAN32__
   667 IMPORT_C
   644 IMPORT_C
   668 #endif
   645 #endif
   705 #ifdef __SYMBIAN32__
   682 #ifdef __SYMBIAN32__
   706 IMPORT_C
   683 IMPORT_C
   707 #endif
   684 #endif
   708 
   685 
   709 void			gst_element_no_more_pads	(GstElement *element);
   686 void			gst_element_no_more_pads	(GstElement *element);
   710 
   687 #ifdef __SYMBIAN32__
   711 #ifndef GST_DISABLE_DEPRECATED
   688 IMPORT_C
   712 #ifdef __SYMBIAN32__
   689 #endif
   713 IMPORT_C
   690 
   714 #endif
   691 
   715 GstPad*			gst_element_get_pad		(GstElement *element, const gchar *name);
   692 GstPad*			gst_element_get_pad		(GstElement *element, const gchar *name);
   716 #endif /* GST_DISABLE_DEPRECATED */
       
   717 #ifdef __SYMBIAN32__
   693 #ifdef __SYMBIAN32__
   718 IMPORT_C
   694 IMPORT_C
   719 #endif
   695 #endif
   720 
   696 
   721 GstPad*			gst_element_get_static_pad	(GstElement *element, const gchar *name);
   697 GstPad*			gst_element_get_static_pad	(GstElement *element, const gchar *name);
   780 gboolean		gst_element_post_message	(GstElement * element, GstMessage * message);
   756 gboolean		gst_element_post_message	(GstElement * element, GstMessage * message);
   781 
   757 
   782 /* error handling */
   758 /* error handling */
   783 /* gcc versions < 3.3 warn about NULL being passed as format to printf */
   759 /* gcc versions < 3.3 warn about NULL being passed as format to printf */
   784 #if (defined(GST_USING_PRINTF_EXTENSION) || !defined(__GNUC__) || (__GNUC__ < 3) || (__GNUC__ == 3 && __GNUC_MINOR__ < 3))
   760 #if (defined(GST_USING_PRINTF_EXTENSION) || !defined(__GNUC__) || (__GNUC__ < 3) || (__GNUC__ == 3 && __GNUC_MINOR__ < 3))
   785 IMPORT_C gchar *			_gst_element_error_printf	(const gchar *format, ...);
   761 gchar *			_gst_element_error_printf	(const gchar *format, ...);
   786 #else
   762 #else
   787 IMPORT_C gchar *			_gst_element_error_printf	(const gchar *format, ...) G_GNUC_PRINTF (1, 2);
   763 gchar *			_gst_element_error_printf	(const gchar *format, ...) G_GNUC_PRINTF (1, 2);
   788 #endif
   764 #endif
   789 IMPORT_C void			gst_element_message_full	(GstElement * element, GstMessageType type,
   765 void			gst_element_message_full	(GstElement * element, GstMessageType type,
   790 							 GQuark domain, gint code, gchar * text,
   766 							 GQuark domain, gint code, gchar * text,
   791 							 gchar * debug, const gchar * file,
   767 							 gchar * debug, const gchar * file,
   792 							 const gchar * function, gint line);
   768 							 const gchar * function, gint line);
   793 
   769 
   794 /* state management */
   770 /* state management */
   842 #ifdef __SYMBIAN32__
   818 #ifdef __SYMBIAN32__
   843 IMPORT_C
   819 IMPORT_C
   844 #endif
   820 #endif
   845 
   821 
   846 void			gst_element_lost_state	        (GstElement * element);
   822 void			gst_element_lost_state	        (GstElement * element);
   847 #ifdef __SYMBIAN32__
       
   848 IMPORT_C
       
   849 #endif
       
   850 
       
   851 void			gst_element_lost_state_full     (GstElement * element, gboolean new_base_time);
       
   852 
   823 
   853 /* factory management */
   824 /* factory management */
   854 #ifdef __SYMBIAN32__
   825 #ifdef __SYMBIAN32__
   855 IMPORT_C
   826 IMPORT_C
   856 #endif
   827 #endif