gstreamermm  1.10.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Related Functions | List of all members
Gst::TocSetter Class Reference

An interface that allows setting and retrieval of the TOC. More...

#include <gstreamermm/tocsetter.h>

Inheritance diagram for Gst::TocSetter:
Inheritance graph
[legend]

Public Member Functions

 TocSetter (TocSetter&& src) noexcept
 
TocSetteroperator= (TocSetter&& src) noexcept
 
 ~TocSetter () noexcept override
 
GstTocSetter* gobj ()
 Provides access to the underlying C GObject. More...
 
const GstTocSetter* gobj () const
 Provides access to the underlying C GObject. More...
 
void set_toc (const Glib::RefPtr< Gst::Toc >& toc)
 Set the given TOC on the setter. More...
 
Glib::RefPtr< Gst::Tocget_toc () const
 Return current TOC the setter uses. More...
 
void reset ()
 Reset the internal TOC. More...
 
- Public Member Functions inherited from Glib::Interface
 Interface ()
 
 Interface (Interface &&src) noexcept
 
Interfaceoperator= (Interface &&src) noexcept
 
 Interface (const Glib::Interface_Class &interface_class)
 
 Interface (GObject *castitem)
 
 ~Interface () noexcept override
 
 Interface (const Interface &)=delete
 
Interfaceoperator= (const Interface &)=delete
 
GObject * gobj ()
 
const GObject * gobj () const
 
- Public Member Functions inherited from Glib::ObjectBase
 ObjectBase (const ObjectBase &)=delete
 
ObjectBaseoperator= (const ObjectBase &)=delete
 
void set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value)
 
void get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const
 
void set_property (const Glib::ustring &property_name, const PropertyType &value)
 
void get_property (const Glib::ustring &property_name, PropertyType &value) const
 
void connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void > &slot)
 
void connect_property_changed (const Glib::ustring &property_name, sigc::slot< void > &&slot)
 
sigc::connection connect_property_changed_with_return (const Glib::ustring &property_name, const sigc::slot< void > &slot)
 
sigc::connection connect_property_changed_with_return (const Glib::ustring &property_name, sigc::slot< void > &&slot)
 
void freeze_notify ()
 
void thaw_notify ()
 
virtual void reference () const
 
virtual void unreference () const
 
GObject * gobj ()
 
const GObject * gobj () const
 
GObject * gobj_copy () const
 
- Public Member Functions inherited from sigc::trackable
 trackable () noexcept
 
 trackable (const trackable &src) noexcept
 
 trackable (trackable &&src)
 
 ~trackable ()
 
void add_destroy_notify_callback (void *data, func_destroy_notify func) const
 
void notify_callbacks ()
 
trackableoperator= (const trackable &src)
 
trackableoperator= (trackable &&src)
 
void remove_destroy_notify_callback (void *data) const
 

Static Public Member Functions

static void add_interface (GType gtype_implementer)
 
static GType get_type ()
 Get the GType for this class, for use with the underlying GObject type system. More...
 

Protected Member Functions

 TocSetter ()
 You should derive from this class to use it. More...
 
- Protected Member Functions inherited from Glib::ObjectBase
 ObjectBase ()
 
 ObjectBase (const char *custom_type_name)
 
 ObjectBase (const std::type_info &custom_type_info)
 
 ObjectBase (ObjectBase &&src) noexcept
 
ObjectBaseoperator= (ObjectBase &&src) noexcept
 
virtual ~ObjectBase () noexcept=0
 
void initialize (GObject *castitem)
 
void initialize_move (GObject *castitem, Glib::ObjectBase *previous_wrapper)
 

Related Functions

(Note that these are not member functions.)

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

Additional Inherited Members

- Public Types inherited from sigc::trackable
typedef internal::func_destroy_notify func_destroy_notify
 

Detailed Description

An interface that allows setting and retrieval of the TOC.

Elements that support some kind of chapters or editions (or tracks like in the FLAC cue sheet) will implement this interface.

If you just want to retrieve the TOC in your application then all you need to do is watch for TOC messages on your pipeline's bus (or you can perform TOC query). This interface is only for setting TOC data, not for extracting it. To set TOC from the application, find proper tocsetter element and set TOC using set_toc().

Elements implementing the Gst::TocSetter interface can extend existing TOC by getting extend UID for that (you can use gst_toc_find_entry() to retrieve it) with any TOC entries received from downstream.

Last reviewed on 2016-08-27 (1.8.0)

Constructor & Destructor Documentation

◆ TocSetter() [1/2]

Gst::TocSetter::TocSetter ( )
protected

You should derive from this class to use it.

◆ TocSetter() [2/2]

Gst::TocSetter::TocSetter ( TocSetter&&  src)
noexcept

◆ ~TocSetter()

Gst::TocSetter::~TocSetter ( )
overridenoexcept

Member Function Documentation

◆ add_interface()

static void Gst::TocSetter::add_interface ( GType  gtype_implementer)
static

◆ get_toc()

Glib::RefPtr<Gst::Toc> Gst::TocSetter::get_toc ( ) const

Return current TOC the setter uses.

The TOC should not be modified without making it writable first.

Returns
TOC set, or nullptr. Unref with gst_toc_unref() when no longer needed.

◆ get_type()

static GType Gst::TocSetter::get_type ( )
static

Get the GType for this class, for use with the underlying GObject type system.

◆ gobj() [1/2]

GstTocSetter* Gst::TocSetter::gobj ( )
inline

Provides access to the underlying C GObject.

◆ gobj() [2/2]

const GstTocSetter* Gst::TocSetter::gobj ( ) const
inline

Provides access to the underlying C GObject.

◆ operator=()

TocSetter& Gst::TocSetter::operator= ( TocSetter&&  src)
noexcept

◆ reset()

void Gst::TocSetter::reset ( )

Reset the internal TOC.

Elements should call this from within the state-change handler.

◆ set_toc()

void Gst::TocSetter::set_toc ( const Glib::RefPtr< Gst::Toc >&  toc)

Set the given TOC on the setter.

Previously set TOC will be unreffed before setting a new one.

Parameters
tocA Gst::Toc to set.

Friends And Related Function Documentation

◆ wrap()

Glib::RefPtr< Gst::TocSetter > wrap ( GstTocSetter *  object,
bool  take_copy = false 
)
related

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

Parameters
objectThe C instance.
take_copyFalse 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.