gst_plugins_base/gst-libs/gst/interfaces/tunerchannel.h
branchRCL_3
changeset 29 567bb019e3e3
parent 0 0e761a78d257
child 30 7e817e7e631c
equal deleted inserted replaced
6:9b2c3c7a1a9c 29:567bb019e3e3
    37 #define GST_IS_TUNER_CHANNEL(obj) \
    37 #define GST_IS_TUNER_CHANNEL(obj) \
    38   (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TUNER_CHANNEL))
    38   (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_TUNER_CHANNEL))
    39 #define GST_IS_TUNER_CHANNEL_CLASS(klass) \
    39 #define GST_IS_TUNER_CHANNEL_CLASS(klass) \
    40   (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_TUNER_CHANNEL))
    40   (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_TUNER_CHANNEL))
    41 
    41 
       
    42 typedef struct _GstTunerChannel GstTunerChannel;
       
    43 typedef struct _GstTunerChannelClass GstTunerChannelClass;
       
    44 
       
    45 /**
       
    46  * GstTunerChannelFlags:
       
    47  * @GST_TUNER_CHANNEL_INPUT: The channel is for input
       
    48  * @GST_TUNER_CHANNEL_OUTPUT: The channel is for output
       
    49  * @GST_TUNER_CHANNEL_FREQUENCY: The channel has a frequency setting
       
    50  *                               and signal strength.
       
    51  * @GST_TUNER_CHANNEL_AUDIO: The channel carries audio.
       
    52  * 
       
    53  * An enumeration for flags indicating the available capabilities
       
    54  * of a #GstTunerChannel.
       
    55  */
    42 typedef enum {
    56 typedef enum {
    43   GST_TUNER_CHANNEL_INPUT     = (1<<0),
    57   GST_TUNER_CHANNEL_INPUT     = (1<<0),
    44   GST_TUNER_CHANNEL_OUTPUT    = (1<<1),
    58   GST_TUNER_CHANNEL_OUTPUT    = (1<<1),
    45   GST_TUNER_CHANNEL_FREQUENCY = (1<<2),
    59   GST_TUNER_CHANNEL_FREQUENCY = (1<<2),
    46   GST_TUNER_CHANNEL_AUDIO     = (1<<3)
    60   GST_TUNER_CHANNEL_AUDIO     = (1<<3)
    47 } GstTunerChannelFlags;
    61 } GstTunerChannelFlags;
    48 
    62 
       
    63 /**
       
    64  * GST_TUNER_CHANNEL_HAS_FLAG:
       
    65  * @channel: A #GstTunerChannel
       
    66  * @flag: The flag to check for
       
    67  * 
       
    68  * Macro to check if the given flag is set on a channel
       
    69  */
    49 #define GST_TUNER_CHANNEL_HAS_FLAG(channel, flag) \
    70 #define GST_TUNER_CHANNEL_HAS_FLAG(channel, flag) \
    50   ((channel)->flags & flag)
    71   ((channel)->flags & flag)
    51 
    72 
    52 typedef struct _GstTunerChannel {
    73 /**
       
    74  * GstTunerChannel:
       
    75  * @label: A string containing a descriptive name for this channel
       
    76  * @flags: A set of #GstTunerChannelFlags for this channel
       
    77  * @freq_multiplicator: The step size (in Hz) for the frequency setting.
       
    78  * @min_frequency: Minimum valid frequency setting (in Hz).
       
    79  * @max_frequency: Maximum valid frequency setting (in Hz).
       
    80  * @min_signal: Minimum reported signal strength value.
       
    81  * @max_signal: Maximum reported signal strength value.
       
    82  */
       
    83 struct _GstTunerChannel {
    53   GObject              parent;
    84   GObject              parent;
    54 
    85 
       
    86   /*< public >*/
    55   gchar               *label;
    87   gchar               *label;
    56   GstTunerChannelFlags flags;
    88   GstTunerChannelFlags flags;
    57   gfloat               freq_multiplicator;
    89   gfloat               freq_multiplicator;
    58   gulong               min_frequency,
    90   gulong               min_frequency;
    59                        max_frequency;
    91   gulong               max_frequency;
    60   gint                 min_signal,
    92   gint                 min_signal;
    61                        max_signal;
    93   gint                 max_signal;
    62 } GstTunerChannel;
    94 };
    63 
    95 
    64 typedef struct _GstTunerChannelClass {
    96 struct _GstTunerChannelClass {
    65   GObjectClass parent;
    97   GObjectClass parent;
    66 
    98 
       
    99   /*< private >*/
    67   /* signals */
   100   /* signals */
    68   void (*frequency_changed) (GstTunerChannel *channel,
   101   void (*frequency_changed) (GstTunerChannel *channel,
    69                              gulong           frequency);
   102                              gulong           frequency);
    70   void (*signal_changed)    (GstTunerChannel *channel,
   103   void (*signal_changed)    (GstTunerChannel *channel,
    71                              gint             signal);
   104                              gint             signal);
    72 
   105 
    73   gpointer _gst_reserved[GST_PADDING];
   106   gpointer _gst_reserved[GST_PADDING];
    74 } GstTunerChannelClass;
   107 };
    75 #ifdef __SYMBIAN32__
   108 #ifdef __SYMBIAN32__
    76 IMPORT_C
   109 IMPORT_C
    77 #endif
   110 #endif
    78 
   111 
    79 
   112