- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

# ghostpad.h

Go to the documentation of this file.

    00001 // -*- c++ -*-
    00002 // Generated by gtkmmproc -- DO NOT MODIFY!
    00003 #ifndef _GSTREAMERMM_GHOSTPAD_H
    00004 #define _GSTREAMERMM_GHOSTPAD_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 <gstreamermm/pad.h>
    00029
    00030
    00031 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00032 typedef struct _GstGhostPad GstGhostPad;
    00033 typedef struct _GstGhostPadClass GstGhostPadClass;
    00034 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00035
    00036
    00037 namespace Gst
    00038 { class GhostPad_Class; } // namespace Gst
    00039 namespace Gst
    00040 {
    00041
    00062 class GhostPad : public Pad
    00063 {
    00064
    00065 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00066
    00067 public:
    00068   typedef GhostPad CppObjectType;
    00069   typedef GhostPad_Class CppClassType;
    00070   typedef GstGhostPad BaseObjectType;
    00071   typedef GstGhostPadClass BaseClassType;
    00072
    00073 private:  friend class GhostPad_Class;
    00074   static CppClassType ghostpad_class_;
    00075
    00076 private:
    00077   // noncopyable
    00078   GhostPad(const GhostPad&);
    00079   GhostPad& operator=(const GhostPad&);
    00080
    00081 protected:
    00082   explicit GhostPad(const Glib::ConstructParams& construct_params);
    00083   explicit GhostPad(GstGhostPad* castitem);
    00084
    00085 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
    00086
    00087 public:
    00088   virtual ~GhostPad();
    00089
    00090 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00091   static GType get_type()      G_GNUC_CONST;
    00092
    00093
    00094   static GType get_base_type() G_GNUC_CONST;
    00095 #endif
    00096
    00098   GstGhostPad*       gobj()       { return reinterpret_cast<GstGhostPad*>(gobject_); }
    00099
    00101   const GstGhostPad* gobj() const { return reinterpret_cast<GstGhostPad*>(gobject_); }
    00102
    00104   GstGhostPad* gobj_copy();
    00105
    00106 private:
    00107
    00108
    00109 protected:
    00116   GhostPad(const Glib::RefPtr<Gst::Pad>& target, const Glib::ustring& name);
    00117
    00124   GhostPad(PadDirection direction, const Glib::ustring& name);
    00125
    00133   GhostPad(const Glib::RefPtr<Gst::Pad>& target,
    00134     const Glib::RefPtr<Gst::PadTemplate>& templ, const Glib::ustring& name);
    00135
    00142   GhostPad(const Glib::RefPtr<Gst::PadTemplate>& templ,
    00143     const Glib::ustring& name);
    00144
    00145
    00146 public:
    00155   static Glib::RefPtr<GhostPad> create(const Glib::RefPtr<Gst::Pad>& target, const Glib::ustring& name =  Glib::ustring());
    00156
    00157
    00169   static Glib::RefPtr<GhostPad> create(PadDirection dir, const Glib::ustring& name =  Glib::ustring());
    00170
    00171
    00182   static Glib::RefPtr<GhostPad> create(const Glib::RefPtr<Gst::Pad>& target, const Glib::RefPtr<Gst::PadTemplate>& templ, const Glib::ustring& name =  Glib::ustring());
    00183
    00184
    00193   static Glib::RefPtr<GhostPad> create(const Glib::RefPtr<Gst::PadTemplate>& templ, const Glib::ustring& name =  Glib::ustring());
    00194
    00195
    00203   bool set_target(const Glib::RefPtr<Gst::Pad>& newtarget);
    00204
    00205
    00210   Glib::RefPtr<Gst::Pad> get_target();
    00211
    00216   Glib::RefPtr<const Gst::Pad> get_target() const;
    00217
    00218 private:
    00219   void handle_error(const Glib::ustring& message);
    00220
    00221
    00222 public:
    00223
    00224 public:
    00225   //C++ methods used to invoke GTK+ virtual functions:
    00226 #ifdef GLIBMM_VFUNCS_ENABLED
    00227 #endif //GLIBMM_VFUNCS_ENABLED
    00228
    00229 protected:
    00230   //GTK+ Virtual Functions (override these to change behaviour):
    00231 #ifdef GLIBMM_VFUNCS_ENABLED
    00232 #endif //GLIBMM_VFUNCS_ENABLED
    00233
    00234   //Default Signal Handlers::
    00235 #ifdef GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00236 #endif //GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
    00237
    00238
    00239 };
    00240
    00241 } // namespace Gst
    00242
    00243
    00244 namespace Glib
    00245 {
    00254   Glib::RefPtr<Gst::GhostPad> wrap(GstGhostPad* object, bool take_copy = false);
    00255 }
    00256
    00257
    00258 #endif /* _GSTREAMERMM_GHOSTPAD_H */
    00259