gstreamermm: tuner.h Source File

- Main Page
- Modules
- Namespaces
- Classes
- Files

# tuner.h

Go to the documentation of this file.

    00001 // -*- c++ -*-
    00002 // Generated by gtkmmproc -- DO NOT MODIFY!
    00003 #ifndef _GSTREAMERMM_TUNER_H
    00004 #define _GSTREAMERMM_TUNER_H
    00005
    00006
    00007 #include <glibmm.h>
    00008
    00009 /* gstreamermm - a C++ wrapper for gstreamer
    00010  *
    00011  * Copyright 2008 The gstreamermm Development Team
    00012  *
    00013  * This library is free software; you can redistribute it and/or
    00014  * modify it under the terms of the GNU Lesser General Public
    00015  * License as published by the Free Software Foundation; either
    00016  * version 2.1 of the License, or (at your option) any later version.
    00017  *
    00018  * This library is distributed in the hope that it will be useful,
    00019  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00021  * Lesser General Public License for more details.
    00022  *
    00023  * You should have received a copy of the GNU Lesser General Public
    00024  * License along with this library; if not, write to the Free
    00025  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
    00026  */
    00027
    00028 #include <gst/interfaces/tuner.h>
    00029 #include <glibmm/interface.h>
    00030
    00031
    00032 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00033 typedef struct _GstTuner GstTuner;
    00034 typedef struct _GstTunerClass GstTunerClass;
    00035 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00036
    00037
    00038 namespace Gst
    00039 { class Tuner_Class; } // namespace Gst
    00040 namespace Gst
    00041 {
    00042
    00043 class TunerChannel;
    00044 class TunerNorm;
    00045
    00050 class Tuner : public Glib::Interface
    00051 {
    00052
    00053 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00054
    00055 public:
    00056   typedef Tuner CppObjectType;
    00057   typedef Tuner_Class CppClassType;
    00058   typedef GstTuner BaseObjectType;
    00059   typedef GstTunerClass BaseClassType;
    00060
    00061 private:
    00062   friend class Tuner_Class;
    00063   static CppClassType tuner_class_;
    00064
    00065   // noncopyable
    00066   Tuner(const Tuner&);
    00067   Tuner& operator=(const Tuner&);
    00068
    00069 protected:
    00070   Tuner(); // you must derive from this class
    00071
    00078   explicit Tuner(const Glib::Interface_Class& interface_class);
    00079
    00080 public:
    00081   // This is public so that C++ wrapper instances can be
    00082   // created for C instances of unwrapped types.
    00083   // For instance, if an unexpected C type implements the C interface.
    00084   explicit Tuner(GstTuner* castitem);
    00085
    00086 protected:
    00087 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00088
    00089 public:
    00090   virtual ~Tuner();
    00091
    00092   static void add_interface(GType gtype_implementer);
    00093
    00094 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00095   static GType get_type()      G_GNUC_CONST;
    00096   static GType get_base_type() G_GNUC_CONST;
    00097 #endif
    00098
    00100   GstTuner*       gobj()       { return reinterpret_cast<GstTuner*>(gobject_); }
    00101
    00103   const GstTuner* gobj() const { return reinterpret_cast<GstTuner*>(gobject_); }
    00104
    00105 private:
    00106
    00107
    00108 public:
    00109
    00110
    00116   Glib::ListHandle< Glib::RefPtr<Gst::TunerChannel> > list_channels();
    00117
    00118
    00124   Glib::ListHandle< Glib::RefPtr<const Gst::TunerChannel> > list_channels() const;
    00125
    00126
    00130   Glib::RefPtr<Gst::TunerChannel> get_channel();
    00131
    00135   Glib::RefPtr<const Gst::TunerChannel> get_channel() const;
    00136
    00140   void set_channel(const Glib::RefPtr<Gst::TunerChannel>& channel);
    00141
    00142
    00149   Glib::ListHandle< Glib::RefPtr<Gst::TunerNorm> >  list_norms();
    00150
    00151
    00158   Glib::ListHandle< Glib::RefPtr<const Gst::TunerNorm> >  list_norms() const;
    00159
    00160
    00165   Glib::RefPtr<Gst::TunerNorm> get_norm();
    00166
    00171   Glib::RefPtr<const Gst::TunerNorm> get_norm() const;
    00172
    00176   void set_norm(const Glib::RefPtr<Gst::TunerNorm>& norm);
    00177
    00184   gulong get_frequency(const Glib::RefPtr<const Gst::TunerChannel>& channel) const;
    00185
    00198   void set_frequency(const Glib::RefPtr<Gst::TunerChannel>& channel, gulong frequency);
    00199
    00211   int get_signal_strength(const Glib::RefPtr<Gst::TunerChannel>& channel);
    00212
    00218   Glib::RefPtr<Gst::TunerNorm> find_norm(const Glib::ustring& norm);
    00219
    00225   Glib::RefPtr<const Gst::TunerNorm> find_norm(const Glib::ustring& norm) const;
    00226
    00232   Glib::RefPtr<Gst::TunerChannel> find_channel(const Glib::ustring& channel);
    00233
    00239   Glib::RefPtr<const Gst::TunerChannel> find_channel(const Glib::ustring& channel) const;
    00240
    00245   void channel_changed(const Glib::RefPtr<Gst::TunerChannel>& channel);
    00246
    00251   void norm_changed(const Glib::RefPtr<Gst::TunerNorm>& norm);
    00252
    00260   void frequency_changed(const Glib::RefPtr<Gst::TunerChannel>& channel, gulong frequency);
    00261
    00269   void signal_changed(const Glib::RefPtr<Gst::TunerChannel>& channel, int signal);
    00270
    00271
    00279   Glib::SignalProxy1< void,const Glib::RefPtr<Gst::TunerChannel>& > signal_channel_changed();
    00280
    00281
    00290   Glib::SignalProxy2< void,const Glib::RefPtr<Gst::TunerChannel>&,gulong > signal_frequency_changed();
    00291
    00292
    00300   Glib::SignalProxy1< void,const Glib::RefPtr<Gst::TunerNorm>& > signal_norm_changed();
    00301
    00302
    00311   Glib::SignalProxy2< void,const Glib::RefPtr<Gst::TunerChannel>&,int > signal_signal_changed();
    00312
    00313
    00314 public:
    00315
    00316 public:
    00317   //C++ methods used to invoke GTK+ virtual functions:
    00318 #ifdef GLIBMM_VFUNCS_ENABLED
    00319 #endif //GLIBMM_VFUNCS_ENABLED
    00320
    00321 protected:
    00322   //GTK+ Virtual Functions (override these to change behaviour):
    00323 #ifdef GLIBMM_VFUNCS_ENABLED
    00324 #endif //GLIBMM_VFUNCS_ENABLED
    00325
    00326   //Default Signal Handlers::
    00327 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00328   virtual void on_channel_changed(const Glib::RefPtr<Gst::TunerChannel>& channel);
    00329   virtual void on_frequency_changed(const Glib::RefPtr<Gst::TunerChannel>& channel, gulong frequency);
    00330   virtual void on_norm_changed(const Glib::RefPtr<Gst::TunerNorm>& norm);
    00331   virtual void on_signal_changed(const Glib::RefPtr<Gst::TunerChannel>& channel, int signal);
    00332 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00333
    00334
    00335 };
    00336
    00337 } // namespace Gst
    00338
    00339
    00340 namespace Glib
    00341 {
    00350   Glib::RefPtr<Gst::Tuner> wrap(GstTuner* object, bool take_copy = false);
    00351
    00352 } // namespace Glib
    00353
    00354
    00355 #endif /* _GSTREAMERMM_TUNER_H */
    00356