gst_plugins_base/gst-libs/gst/interfaces/tunerchannel.h
branchRCL_3
changeset 30 7e817e7e631c
parent 29 567bb019e3e3
equal deleted inserted replaced
29:567bb019e3e3 30:7e817e7e631c
    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  */
       
    56 typedef enum {
    42 typedef enum {
    57   GST_TUNER_CHANNEL_INPUT     = (1<<0),
    43   GST_TUNER_CHANNEL_INPUT     = (1<<0),
    58   GST_TUNER_CHANNEL_OUTPUT    = (1<<1),
    44   GST_TUNER_CHANNEL_OUTPUT    = (1<<1),
    59   GST_TUNER_CHANNEL_FREQUENCY = (1<<2),
    45   GST_TUNER_CHANNEL_FREQUENCY = (1<<2),
    60   GST_TUNER_CHANNEL_AUDIO     = (1<<3)
    46   GST_TUNER_CHANNEL_AUDIO     = (1<<3)
    61 } GstTunerChannelFlags;
    47 } GstTunerChannelFlags;
    62 
    48 
    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  */
       
    70 #define GST_TUNER_CHANNEL_HAS_FLAG(channel, flag) \
    49 #define GST_TUNER_CHANNEL_HAS_FLAG(channel, flag) \
    71   ((channel)->flags & flag)
    50   ((channel)->flags & flag)
    72 
    51 
    73 /**
    52 typedef struct _GstTunerChannel {
    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 {
       
    84   GObject              parent;
    53   GObject              parent;
    85 
    54 
    86   /*< public >*/
       
    87   gchar               *label;
    55   gchar               *label;
    88   GstTunerChannelFlags flags;
    56   GstTunerChannelFlags flags;
    89   gfloat               freq_multiplicator;
    57   gfloat               freq_multiplicator;
    90   gulong               min_frequency;
    58   gulong               min_frequency,
    91   gulong               max_frequency;
    59                        max_frequency;
    92   gint                 min_signal;
    60   gint                 min_signal,
    93   gint                 max_signal;
    61                        max_signal;
    94 };
    62 } GstTunerChannel;
    95 
    63 
    96 struct _GstTunerChannelClass {
    64 typedef struct _GstTunerChannelClass {
    97   GObjectClass parent;
    65   GObjectClass parent;
    98 
    66 
    99   /*< private >*/
       
   100   /* signals */
    67   /* signals */
   101   void (*frequency_changed) (GstTunerChannel *channel,
    68   void (*frequency_changed) (GstTunerChannel *channel,
   102                              gulong           frequency);
    69                              gulong           frequency);
   103   void (*signal_changed)    (GstTunerChannel *channel,
    70   void (*signal_changed)    (GstTunerChannel *channel,
   104                              gint             signal);
    71                              gint             signal);
   105 
    72 
   106   gpointer _gst_reserved[GST_PADDING];
    73   gpointer _gst_reserved[GST_PADDING];
   107 };
    74 } GstTunerChannelClass;
   108 #ifdef __SYMBIAN32__
    75 #ifdef __SYMBIAN32__
   109 IMPORT_C
    76 IMPORT_C
   110 #endif
    77 #endif
   111 
    78 
   112 
    79