- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

# indexfactory.h

Go to the documentation of this file.

    00001 // -*- c++ -*-
    00002 // Generated by gtkmmproc -- DO NOT MODIFY!
    00003 #ifndef _GSTREAMERMM_INDEXFACTORY_H
    00004 #define _GSTREAMERMM_INDEXFACTORY_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/gstelement.h>
    00029 #include <gstreamermm/pluginfeature.h>
    00030
    00031
    00032 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00033 typedef struct _GstIndexFactory GstIndexFactory;
    00034 typedef struct _GstIndexFactoryClass GstIndexFactoryClass;
    00035 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00036
    00037
    00038 namespace Gst
    00039 { class IndexFactory_Class; } // namespace Gst
    00040 namespace Gst
    00041 {
    00042
    00043 class Index;
    00044
    00049 class IndexFactory : public PluginFeature
    00050 {
    00051
    00052 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00053
    00054 public:
    00055   typedef IndexFactory CppObjectType;
    00056   typedef IndexFactory_Class CppClassType;
    00057   typedef GstIndexFactory BaseObjectType;
    00058   typedef GstIndexFactoryClass BaseClassType;
    00059
    00060 private:  friend class IndexFactory_Class;
    00061   static CppClassType indexfactory_class_;
    00062
    00063 private:
    00064   // noncopyable
    00065   IndexFactory(const IndexFactory&);
    00066   IndexFactory& operator=(const IndexFactory&);
    00067
    00068 protected:
    00069   explicit IndexFactory(const Glib::ConstructParams& construct_params);
    00070   explicit IndexFactory(GstIndexFactory* castitem);
    00071
    00072 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00073
    00074 public:
    00075   virtual ~IndexFactory();
    00076
    00077 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00078   static GType get_type()      G_GNUC_CONST;
    00079
    00080
    00081   static GType get_base_type() G_GNUC_CONST;
    00082 #endif
    00083
    00085   GstIndexFactory*       gobj()       { return reinterpret_cast<GstIndexFactory*>(gobject_); }
    00086
    00088   const GstIndexFactory* gobj() const { return reinterpret_cast<GstIndexFactory*>(gobject_); }
    00089
    00091   GstIndexFactory* gobj_copy();
    00092
    00093 private:
    00094
    00095
    00096 protected:
    00097   explicit IndexFactory(const Glib::ustring& name, const Glib::ustring& longdesc, GType type);
    00098
    00099 public:
    00108   static Glib::RefPtr<IndexFactory> create(const Glib::ustring& name, const Glib::ustring& longdesc, GType type);
    00109
    00110
    00115   static Glib::RefPtr<Gst::IndexFactory> find(const Glib::ustring& name);
    00116
    00121   Glib::RefPtr<Gst::Index> create_index();
    00122
    00128   static Glib::RefPtr<Gst::Index> create_index(const Glib::ustring& factory_name);
    00129
    00130   //Destruction occurs when last reference is lost.
    00131
    00132
    00133 public:
    00134
    00135 public:
    00136   //C++ methods used to invoke GTK+ virtual functions:
    00137 #ifdef GLIBMM_VFUNCS_ENABLED
    00138 #endif //GLIBMM_VFUNCS_ENABLED
    00139
    00140 protected:
    00141   //GTK+ Virtual Functions (override these to change behaviour):
    00142 #ifdef GLIBMM_VFUNCS_ENABLED
    00143 #endif //GLIBMM_VFUNCS_ENABLED
    00144
    00145   //Default Signal Handlers::
    00146 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00147 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00148
    00149
    00150 };
    00151
    00152 } // namespace Gst
    00153
    00154
    00155 namespace Glib
    00156 {
    00165   Glib::RefPtr<Gst::IndexFactory> wrap(GstIndexFactory* object, bool take_copy = false);
    00166 }
    00167
    00168
    00169 #endif /* _GSTREAMERMM_INDEXFACTORY_H */
    00170