gst_plugins_base/gst-libs/gst/audio/gstaudioclock.h
branchRCL_3
changeset 30 7e817e7e631c
parent 29 567bb019e3e3
equal deleted inserted replaced
29:567bb019e3e3 30:7e817e7e631c
    21  */
    21  */
    22 
    22 
    23 #ifndef __GST_AUDIO_CLOCK_H__
    23 #ifndef __GST_AUDIO_CLOCK_H__
    24 #define __GST_AUDIO_CLOCK_H__
    24 #define __GST_AUDIO_CLOCK_H__
    25 
    25 
    26 #include <gst/gst.h>
       
    27 #include <gst/gstsystemclock.h>
    26 #include <gst/gstsystemclock.h>
    28 
    27 
    29 G_BEGIN_DECLS
    28 G_BEGIN_DECLS
    30 
    29 
    31 #define GST_TYPE_AUDIO_CLOCK \
    30 #define GST_TYPE_AUDIO_CLOCK \
    36   (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_AUDIO_CLOCK,GstAudioClockClass))
    35   (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_AUDIO_CLOCK,GstAudioClockClass))
    37 #define GST_IS_AUDIO_CLOCK(obj) \
    36 #define GST_IS_AUDIO_CLOCK(obj) \
    38   (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_AUDIO_CLOCK))
    37   (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_AUDIO_CLOCK))
    39 #define GST_IS_AUDIO_CLOCK_CLASS(klass) \
    38 #define GST_IS_AUDIO_CLOCK_CLASS(klass) \
    40   (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_AUDIO_CLOCK))
    39   (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_AUDIO_CLOCK))
    41 #define GST_AUDIO_CLOCK_CAST(obj) \
       
    42   ((GstAudioClock*)(obj))
       
    43 
    40 
    44 typedef struct _GstAudioClock GstAudioClock;
    41 typedef struct _GstAudioClock GstAudioClock;
    45 typedef struct _GstAudioClockClass GstAudioClockClass;
    42 typedef struct _GstAudioClockClass GstAudioClockClass;
    46 
    43 
    47 /**
    44 /**
    72   gpointer user_data;
    69   gpointer user_data;
    73 
    70 
    74   GstClockTime last_time;
    71   GstClockTime last_time;
    75 
    72 
    76   /*< private >*/
    73   /*< private >*/
    77   union {
    74   gpointer _gst_reserved[GST_PADDING];
    78     struct {
       
    79       GstClockTimeDiff   time_offset;
       
    80     } ABI;
       
    81     /* adding + 0 to mark ABI change to be undone later */
       
    82     gpointer _gst_reserved[GST_PADDING + 0];
       
    83   } abidata;
       
    84 };
    75 };
    85 
    76 
    86 struct _GstAudioClockClass {
    77 struct _GstAudioClockClass {
    87   GstSystemClockClass parent_class;
    78   GstSystemClockClass parent_class;
    88 
    79 
    97 GType           gst_audio_clock_get_type        (void);
    88 GType           gst_audio_clock_get_type        (void);
    98 #ifdef __SYMBIAN32__
    89 #ifdef __SYMBIAN32__
    99 IMPORT_C
    90 IMPORT_C
   100 #endif
    91 #endif
   101 
    92 
   102 GstClock*       gst_audio_clock_new             (const gchar *name, GstAudioClockGetTimeFunc func,
    93 GstClock*       gst_audio_clock_new             (gchar *name, GstAudioClockGetTimeFunc func,
   103                                                  gpointer user_data);
    94                                                  gpointer user_data);
   104 #ifdef __SYMBIAN32__
       
   105 IMPORT_C
       
   106 #endif
       
   107 
       
   108 void            gst_audio_clock_reset           (GstAudioClock *clock, GstClockTime time);
       
   109 #ifdef __SYMBIAN32__
       
   110 IMPORT_C
       
   111 #endif
       
   112 
       
   113 
       
   114 GstClockTime    gst_audio_clock_get_time        (GstClock * clock);
       
   115 #ifdef __SYMBIAN32__
       
   116 IMPORT_C
       
   117 #endif
       
   118 
       
   119 GstClockTime    gst_audio_clock_adjust          (GstClock * clock, GstClockTime time);
       
   120 
    95 
   121 G_END_DECLS
    96 G_END_DECLS
   122 
    97 
   123 #endif /* __GST_AUDIO_CLOCK_H__ */
    98 #endif /* __GST_AUDIO_CLOCK_H__ */