Gst::PadTemplate Class Reference

Gst::PadTemplate — Describe the media type of a pad. More...

#include <padtemplate.h>

Inheritance diagram for Gst::PadTemplate:

Gst::Object

List of all members.

Public Member Functions

virtual ~PadTemplate ()
GstPadTemplate* gobj ()
 Provides access to the underlying C GObject.
const GstPadTemplate* gobj () const
 Provides access to the underlying C GObject.
GstPadTemplate* gobj_copy ()
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
Glib::RefPtr<Gst::Capsget_caps ()
 Gets the capabilities of the pad template.
Glib::RefPtr<const Gst::Capsget_caps () const
 Gets the capabilities of the pad template.
Glib::ustring get_name_template () const
 Get the nametemplate of the padtemplate.
PadDirection get_direction () const
 Get the Gst::PadDirection of the padtemplate.
PadPresence get_presence () const
 Get the Gst::PadPresence of the padtemplate.
Glib::SignalProxy1< void,
const Glib::RefPtr<Gst::Pad >&> 
signal_pad_created ()
 This signal is fired when an element creates a pad from this template.

Static Public Member Functions

static Glib::RefPtr<PadTemplatecreate (const Glib::ustring& name_template, PadDirection direction, PadPresence presence, const Glib::RefPtr<Gst::Caps>& caps)
 Creates a new pad template with a name according to the given template and with the given arguments.

Protected Member Functions

 PadTemplate (const Glib::ustring& name_template, PadDirection direction, PadPresence presence, const Glib::RefPtr<Gst::Caps>& caps)
virtual void on_pad_created (const Glib::RefPtr<Gst::Pad>& pad)

Related Functions

(Note that these are not member functions.)

Glib::RefPtr<Gst::PadTemplatewrap (GstPadTemplate* object, bool take_copy=false)
 A Glib::wrap() method for this object.


Detailed Description

Gst::PadTemplate — Describe the media type of a pad.

Padtemplates describe the possible media types a pad or an elementfactory can handle. This allows for both inspection of handled types before loading the element plugin as well as identifying pads on elements that are not yet created (request or sometimes pads).

Gst::Pad and PadTemplates have Gst::Caps attached to it to describe the media type they are capable of dealing with. get_caps() is used to get the caps of a padtemplate. It's not possible to modify the caps of a padtemplate after creation.

PadTemplates have a Gst::PadPresence property which identifies the lifetime of the pad and that can be retrieved with get_presence(). Also the direction of the pad can be retrieved from the GstPadTemplate with get_direction().

The get_name_template() method is important for Gst::PAD_REQUEST pads because it has to be used as the name in the Gst::Element::get_request_pad() call to instantiate a pad from this template.

Padtemplates can be created with create().

A padtemplate can be used to create a pad (see Gst::Pad::create() methods).


Constructor& Destructor Documentation

virtual Gst::PadTemplate::~PadTemplate (  )  [virtual]

Gst::PadTemplate::PadTemplate ( const Glib::ustring &  name_template,
PadDirection  direction,
PadPresence  presence,
const Glib::RefPtr<Gst::Caps>&  caps 
) [explicit, protected]


Member Function Documentation

static Glib::RefPtr<PadTemplate> Gst::PadTemplate::create ( const Glib::ustring &  name_template,
PadDirection  direction,
PadPresence  presence,
const Glib::RefPtr<Gst::Caps>&  caps 
) [static]

Creates a new pad template with a name according to the given template and with the given arguments.

This functions takes ownership of the provided caps, so be sure to not use them afterwards.

Parameters:
name_template The name template.
direction The Gst::PadDirection of the template.
presence The Gst::PadPresence of the pad.
caps A Gst::Caps set for the template. The caps are taken ownership of.
Returns:
A new Gst::PadTemplate.

Glib::RefPtr<const Gst::Caps> Gst::PadTemplate::get_caps (  )  const

Gets the capabilities of the pad template.

Returns:
The Gst::Caps of the pad template. If you need to keep a reference to the caps, take a ref (see gst_caps_ref()).

Glib::RefPtr<Gst::Caps> Gst::PadTemplate::get_caps (  ) 

Gets the capabilities of the pad template.

Returns:
The Gst::Caps of the pad template. If you need to keep a reference to the caps, take a ref (see gst_caps_ref()).

PadDirection Gst::PadTemplate::get_direction (  )  const

Get the Gst::PadDirection of the padtemplate.

Glib::ustring Gst::PadTemplate::get_name_template (  )  const

Get the nametemplate of the padtemplate.

PadPresence Gst::PadTemplate::get_presence (  )  const

Get the Gst::PadPresence of the padtemplate.

const GstPadTemplate* Gst::PadTemplate::gobj (  )  const [inline]

Provides access to the underlying C GObject.

Reimplemented from Gst::Object.

GstPadTemplate* Gst::PadTemplate::gobj (  )  [inline]

Provides access to the underlying C GObject.

Reimplemented from Gst::Object.

GstPadTemplate* Gst::PadTemplate::gobj_copy (  ) 

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

Reimplemented from Gst::Object.

virtual void Gst::PadTemplate::on_pad_created ( const Glib::RefPtr<Gst::Pad>&  pad  )  [protected, virtual]

Glib::SignalProxy1<void,const Glib::RefPtr<Gst::Pad>&> Gst::PadTemplate::signal_pad_created (  ) 

This signal is fired when an element creates a pad from this template.

Prototype:
void on_my_pad_created(const Glib::RefPtr<Gst::Pad>& pad)


Friends And Related Function Documentation

Glib::RefPtr<Gst::PadTemplate> wrap ( GstPadTemplate *  object,
bool  take_copy = false 
) [related]

A Glib::wrap() method for this object.

Parameters:
object The C instance.
take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns:
A C++ instance that wraps this C instance.


The documentation for this class was generated from the following file:

Generated on Thu Jan 15 09:33:13 2009 for gstreamermm by  doxygen 1.5.7.1