- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

# navigation.h

Go to the documentation of this file.

    00001 // -*- c++ -*-
    00002 // Generated by gtkmmproc -- DO NOT MODIFY!
    00003 #ifndef _GSTREAMERMM_NAVIGATION_H
    00004 #define _GSTREAMERMM_NAVIGATION_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/navigation.h>
    00029 #include <glibmm/interface.h>
    00030
    00031
    00032 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00033 typedef struct _GstNavigation GstNavigation;
    00034 typedef struct _GstNavigationClass GstNavigationClass;
    00035 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00036
    00037
    00038 namespace Gst
    00039 { class Navigation_Class; } // namespace Gst
    00040 namespace Gst
    00041 {
    00042
    00048 enum NavigationCommand
    00049 {
    00050   NAVIGATION_COMMAND_INVALID = 0,
    00051   NAVIGATION_COMMAND_MENU1 = 1,
    00052   NAVIGATION_COMMAND_MENU2 = 2,
    00053   NAVIGATION_COMMAND_MENU3 = 3,
    00054   NAVIGATION_COMMAND_MENU4 = 4,
    00055   NAVIGATION_COMMAND_MENU5 = 5,
    00056   NAVIGATION_COMMAND_MENU6 = 6,
    00057   NAVIGATION_COMMAND_MENU7 = 7,
    00058   NAVIGATION_COMMAND_LEFT = 20,
    00059   NAVIGATION_COMMAND_RIGHT = 21,
    00060   NAVIGATION_COMMAND_UP = 22,
    00061   NAVIGATION_COMMAND_DOWN = 23,
    00062   NAVIGATION_COMMAND_ACTIVATE = 24,
    00063   NAVIGATION_COMMAND_PREV_ANGLE = 30,
    00064   NAVIGATION_COMMAND_NEXT_ANGLE = 31
    00065 };
    00066
    00067 } // namespace Gst
    00068
    00069
    00070 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00071 namespace Glib
    00072 {
    00073
    00074 template <>
    00075 class Value<Gst::NavigationCommand> : public Glib::Value_Enum<Gst::NavigationCommand>
    00076 {
    00077 public:
    00078   static GType value_type() G_GNUC_CONST;
    00079 };
    00080
    00081 } // namespace Glib
    00082 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00083
    00084
    00085 namespace Gst
    00086 {
    00087
    00088
    00089 class Structure;
    00090
    00096 class Navigation : public Glib::Interface
    00097 {
    00098
    00099 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00100
    00101 public:
    00102   typedef Navigation CppObjectType;
    00103   typedef Navigation_Class CppClassType;
    00104   typedef GstNavigation BaseObjectType;
    00105   typedef GstNavigationInterface BaseClassType;
    00106
    00107 private:
    00108   friend class Navigation_Class;
    00109   static CppClassType navigation_class_;
    00110
    00111   // noncopyable
    00112   Navigation(const Navigation&);
    00113   Navigation& operator=(const Navigation&);
    00114
    00115 protected:
    00116   Navigation(); // you must derive from this class
    00117
    00124   explicit Navigation(const Glib::Interface_Class& interface_class);
    00125
    00126 public:
    00127   // This is public so that C++ wrapper instances can be
    00128   // created for C instances of unwrapped types.
    00129   // For instance, if an unexpected C type implements the C interface.
    00130   explicit Navigation(GstNavigation* castitem);
    00131
    00132 protected:
    00133 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00134
    00135 public:
    00136   virtual ~Navigation();
    00137
    00138   static void add_interface(GType gtype_implementer);
    00139
    00140 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00141   static GType get_type()      G_GNUC_CONST;
    00142   static GType get_base_type() G_GNUC_CONST;
    00143 #endif
    00144
    00146   GstNavigation*       gobj()       { return reinterpret_cast<GstNavigation*>(gobject_); }
    00147
    00149   const GstNavigation* gobj() const { return reinterpret_cast<GstNavigation*>(gobject_); }
    00150
    00151 private:
    00152
    00153
    00154 public:
    00155
    00156   void send_event(Gst::Structure& structure);
    00157
    00158   void send_key_event(const Glib::ustring& event, const Glib::ustring& key);
    00159
    00171   void send_mouse_event(const Glib::ustring& event, int button, double x, double y);
    00172
    00178   void send_command(Gst::NavigationCommand command);
    00179
    00180 #ifdef GLIBMM_VFUNCS_ENABLED
    00181
    00183   virtual void send_event_vfunc(Gst::Structure& structure);
    00184 #endif //GLIBMM_VFUNCS_ENABLED
    00185
    00186 protected:
    00187
    00188
    00189 public:
    00190
    00191 public:
    00192   //C++ methods used to invoke GTK+ virtual functions:
    00193 #ifdef GLIBMM_VFUNCS_ENABLED
    00194 #endif //GLIBMM_VFUNCS_ENABLED
    00195
    00196 protected:
    00197   //GTK+ Virtual Functions (override these to change behaviour):
    00198 #ifdef GLIBMM_VFUNCS_ENABLED
    00199 #endif //GLIBMM_VFUNCS_ENABLED
    00200
    00201   //Default Signal Handlers::
    00202 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00203 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00204
    00205
    00206 };
    00207
    00208 } // namespace Gst
    00209
    00210
    00211 namespace Glib
    00212 {
    00221   Glib::RefPtr<Gst::Navigation> wrap(GstNavigation* object, bool take_copy = false);
    00222
    00223 } // namespace Glib
    00224
    00225
    00226 #endif /* _GSTREAMERMM_NAVIGATION_H */
    00227