gstreamermm 1.10.0
Gst::QueryDuration Class Reference

A stream duration query object. More...

#include <gstreamermm/query.h>

Inheritance diagram for Gst::QueryDuration:

Public Member Functions

void set (Format format, gint64 duration)
 Answer a duration query by setting the requested value in the given format.
void parse (Format& format, gint64& duration) const
 Parse a duration query answer.
gint64 parse () const
 Parse a duration query answer, returning the duration.
Format parse_format () const
 Parse a duration query answer, returning the format of the duration.
Public Member Functions inherited from Gst::Query
void reference () const
 Increment the reference count for this object.
void unreference () const
 Decrement the reference count for this object.
GstQuery* gobj ()
 Provides access to the underlying C instance.
const GstQuery* gobj () const
 Provides access to the underlying C instance.
GstQuery* gobj_copy () const
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
 Query ()=delete
 Query (const Query&)=delete
Queryoperator= (const Query&)=delete
Glib::RefPtr< Gst::Querycreate_writable ()
 Makes a writable query from the given query.
Gst::Structure get_structure () const
 Get the structure of a query.
QueryType get_query_type () const
 Get the Gst::QueryType of the query.
Glib::RefPtr< Gst::Querycopy ()
 Copies the given query using the copy function of the parent Gst::Structure.
Public Member Functions inherited from Gst::MiniObject
void reference () const
 Increment the reference count for this object.
void unreference () const
 Decrement the reference count for this object.
GstMiniObject* gobj ()
 Provides access to the underlying C instance.
const GstMiniObject* gobj () const
 Provides access to the underlying C instance.
GstMiniObject* gobj_copy () const
 Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
 MiniObject ()=delete
 MiniObject (const MiniObject&)=delete
MiniObjectoperator= (const MiniObject&)=delete
 ~MiniObject ()
guint get_flags () const
void set_flags (const guint& value)
gint get_refcount () const
gint get_lockstate () const
bool lock (LockFlags flags)
 Lock the mini-object with the specified access mode in flags.
void unlock (LockFlags flags)
 Unlock the mini-object with the specified access mode in flags.
bool is_writable () const
 If mini_object has the LOCKABLE flag set, check if the current EXCLUSIVE lock on object is the only one, this means that changes to the object will not be visible to any other object.
Glib::RefPtr< MiniObjectcreate_writable ()
 Checks if a mini-object is writable.
void set_qdata (GQuark quark, QuarkData*data)
 This sets an opaque, named pointer on a miniobject.
QuarkDataget_qdata (GQuark quark) const
 This function gets back user data pointers stored via set_qdata().
QuarkDatasteal_qdata (GQuark quark)
 This function gets back user data pointers stored via set_qdata() and removes the data from object without invoking its destroy() function (if any was set).
void add_finalize_notifier (const SlotFinalizer& slot)
 Adds notifier when mini object is finalized.
void remove_finalize_notifier ()
 Remove finalize notifier.

Static Public Member Functions

static Glib::RefPtr< Gst::QueryDurationcreate (Format format)
 Constructs a new stream duration query object to query in the given format.
Static Public Member Functions inherited from Gst::Query
static Glib::RefPtr< Gst::Querycreate_buffering (Gst::Format format)
 Constructs a new query object for querying the buffering status of a stream.
static Glib::RefPtr< Gst::Querycreate_allocation (Glib::RefPtr< Gst::Caps > caps, bool need_pool)
 Constructs a new query object for querying the allocation properties.
static Glib::RefPtr< Gst::Querycreate_uri ()
 Constructs a new query URI query object.
static Glib::RefPtr< Gst::Querycreate_scheduling ()
 Constructs a new query object for querying the scheduling properties.
static Glib::RefPtr< Gst::Querycreate_drain ()
 Constructs a new query object for querying the drain state.
static Glib::RefPtr< Gst::Querycreate_custom (Gst::QueryType type, const Gst::Structure& structure)
 Constructs a new custom query object.
static Glib::RefPtr< Gst::Querycreate_convert (Gst::Format format, gint64 value, Gst::Format dest_format)
 Constructs a new convert query object.
static Glib::RefPtr< Gst::Querycreate_position (Gst::Format format)
 Constructs a new query stream position query object.
static Glib::RefPtr< Gst::Querycreate_duration (Gst::Format format)
 Constructs a new stream duration query object to query in the given format.
static Glib::RefPtr< Gst::Querycreate_latency ()
 Constructs a new latency query object.
static Glib::RefPtr< Gst::Querycreate_seeking (Gst::Format format)
 Constructs a new query object for querying seeking properties of the stream.
static Glib::RefPtr< Gst::Querycreate_formats ()
 Constructs a new query object for querying formats of the stream.
static Glib::RefPtr< Gst::Querycreate_segment (Gst::Format format)
 Constructs a new segment query object.
static Glib::RefPtr< Gst::Querycreate_caps (Glib::RefPtr< Gst::Caps > filter)
 Constructs a new query object for querying the caps.
static Glib::RefPtr< Gst::Querycreate_accept_caps (Glib::RefPtr< Gst::Caps > filter)
 Constructs a new query object for querying if filter are accepted.

Additional Inherited Members

Public Types inherited from Gst::MiniObject
typedef sigc::slot< void > SlotFinalizer
Protected Member Functions inherited from Gst::Query
void operator delete (void*, std::size_t)
Protected Member Functions inherited from Gst::MiniObject
void operator delete (void*, std::size_t)
Static Protected Member Functions inherited from Gst::Query
template <class QueryType>
static Glib::RefPtr< QueryTypewrap (GstQuery* query, bool take_copy=false)

Detailed Description

A stream duration query object.

See create() for more details.

Member Function Documentation

◆ create()

Glib::RefPtr< Gst::QueryDuration > Gst::QueryDuration::create ( Format format)
static

Constructs a new stream duration query object to query in the given format.

A duration query will give the total length of the stream.

Parameters
formatThe Gst::Format for this duration query.
Returns
The new Gst::QueryDuration.

◆ parse() [1/2]

gint64 Gst::QueryDuration::parse ( ) const

Parse a duration query answer, returning the duration.


Returns
The total duration.

◆ parse() [2/2]

void Gst::QueryDuration::parse ( Format& format,
gint64 & duration ) const

Parse a duration query answer.

Write the format of the duration into format, and the value into duration. Use the other parse() methods for parsing individual values.

Parameters
formatThe storage for the Gst::Format of the duration value.
durationThe storage for the total duration.

◆ parse_format()

Format Gst::QueryDuration::parse_format ( ) const

Parse a duration query answer, returning the format of the duration.

Returns
The Gst::Format of the duration value.

◆ set()

void Gst::QueryDuration::set ( Format format,
gint64 duration )

Answer a duration query by setting the requested value in the given format.

Parameters
formatThe Gst::Format for the duration.
durationThe duration of the stream.