Gst::QueryBuffering Class Reference

A new buffering query object. More...

`#include <gstreamermm/query.h>`

Inheritance diagram for Gst::QueryBuffering:
[legend]

## Public Member Functions

void | set (bool busy, int percent)
| Set the percentage of buffered data. More...
void | parse (bool& busy, int& percent) const
| Get the busy flag and percentage of the buffered data. More...
bool | parse_busy () const
| Get the busy flag of the buffered data. More...
int | parse_percent () const
| Get the percentage of the buffered data. More...
void | set (BufferingMode mode, int avg_in, int avg_out, gint64 buffering_left)
| Configures the buffering stats values in query. More...
void | parse (BufferingMode& mode, int& avg_in, int& avg_out, gint64 buffering_left) const
| Extracts the buffering stats values from the query. More...
BufferingMode | parse_mode () const
| Extracts the buffering mode from the query. More...
int | parse_input_rate () const
| Extracts the average input rate from the query. More...
int | parse_output_rate () const
| Extracts the average output rate from the query. More...
gint64 | parse_time_left () const
| Extracts the buffering time left from the query. More...
void | set (Format format, gint64 start, gint64 stop, gint64 estimated_total)
| Set the available query result fields in query. More...
void | parse (Format& format, gint64&start, gint64& stop, gint64& estimated_total) const
| Parse the query, writing the format into format, and other results into the passed parameters. More...
Format | parse_format () const
| Parse the query, returning the format. More...
gint64 | parse_start () const
| Parse the query, returning the start range value. More...
gint64 | parse_stop () const
| Parse the query, returning the stop range value. More...
gint64 | parse_total_time () const
| Parse the query, returning the estimated total amount of download time. More...
guint | get_n_buffering_ranges () const
| Retrieve the number of values currently stored in the buffered-ranges array of the query's structure. More...
bool | add_buffering_range (gint64 start, gint64 stop)
| Set the buffering-ranges array field in query. More...
bool | parse_nth_buffering_range (guint index, gint64&start, gint64& stop) const
| Parse an available query and get the start and stop values stored at the index of the buffered ranges array. More...
Public Member Functions inherited from Gst::Query
void | reference () const
| Increment the reference count for this object. More...
void | unreference () const
| Decrement the reference count for this object. More...
GstQuery* | gobj ()
| Provides access to the underlying C instance. More...
const GstQuery* | gobj () const
| Provides access to the underlying C instance. More...
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. More...
| Query ()=delete
| Query (const Query&)=delete
Query& | operator= (const Query&)=delete
Glib::RefPtr< Gst::Query > | create_writable ()
| Makes a writable query from the given query. More...
Gst::Structure | get_structure () const
| Get the structure of a query. More...
QueryType | get_query_type () const
| Get the Gst::QueryType of the query. More...
Glib::RefPtr< Gst::Query > | copy ()
| Copies the given query using the copy function of the parent Gst::Structure. More...
Public Member Functions inherited from Gst::MiniObject
void | reference () const
| Increment the reference count for this object. More...
void | unreference () const
| Decrement the reference count for this object. More...
GstMiniObject* | gobj ()
| Provides access to the underlying C instance. More...
const GstMiniObject* | gobj () const
| Provides access to the underlying C instance. More...
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. More...
| MiniObject ()=delete
| MiniObject (const MiniObject&)=delete
MiniObject& | operator= (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. More...
void | unlock (LockFlags flags)
| Unlock the mini-object with the specified access mode in flags. More...
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. More...
Glib::RefPtr< MiniObject > | create_writable ()
| Checks if a mini-object is writable. More...
void | set_qdata (GQuark quark, QuarkData* data)
| This sets an opaque, named pointer on a miniobject. More...
QuarkData* | get_qdata (GQuark quark) const
| This function gets back user data pointers stored via set_qdata(). More...
QuarkData* | steal_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). More...
void | add_finalize_notifier (const SlotFinalizer& slot)
| Adds notifier when mini object is finalized. More...
void | remove_finalize_notifier ()
| Remove finalize notifier. More...

## Static Public Member Functions

static Glib::RefPtr< Gst::QueryBuffering > | create (Format format)
| Constructs a new query object for querying the buffering status of a stream. More...
Static Public Member Functions inherited from Gst::Query
static Glib::RefPtr< Gst::Query > | create_buffering (Gst::Format format)
| Constructs a new query object for querying the buffering status of a stream. More...
static Glib::RefPtr< Gst::Query > | create_allocation (Glib::RefPtr< Gst::Caps > caps, bool need_pool)
| Constructs a new query object for querying the allocation properties. More...
static Glib::RefPtr< Gst::Query > | create_uri ()
| Constructs a new query URI query object. More...
static Glib::RefPtr< Gst::Query > | create_scheduling ()
| Constructs a new query object for querying the scheduling properties. More...
static Glib::RefPtr< Gst::Query > | create_drain ()
| Constructs a new query object for querying the drain state. More...
static Glib::RefPtr< Gst::Query > | create_custom (Gst::QueryType type, const Gst::Structure& structure)
| Constructs a new custom query object. More...
static Glib::RefPtr< Gst::Query > | create_convert (Gst::Format format, gint64 value, Gst::Format dest_format)
| Constructs a new convert query object. More...
static Glib::RefPtr< Gst::Query > | create_position (Gst::Format format)
| Constructs a new query stream position query object. More...
static Glib::RefPtr< Gst::Query > | create_duration (Gst::Format format)
| Constructs a new stream duration query object to query in the given format. More...
static Glib::RefPtr< Gst::Query > | create_latency ()
| Constructs a new latency query object. More...
static Glib::RefPtr< Gst::Query > | create_seeking (Gst::Format format)
| Constructs a new query object for querying seeking properties of the stream. More...
static Glib::RefPtr< Gst::Query > | create_formats ()
| Constructs a new query object for querying formats of the stream. More...
static Glib::RefPtr< Gst::Query > | create_segment (Gst::Format format)
| Constructs a new segment query object. More...
static Glib::RefPtr< Gst::Query > | create_caps (Glib::RefPtr< Gst::Caps > filter)
| Constructs a new query object for querying the caps. More...
static Glib::RefPtr< Gst::Query > | create_accept_caps (Glib::RefPtr< Gst::Caps > filter)
| Constructs a new query object for querying if filter are accepted. More...

## 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< QueryType > | wrap (GstQuery* query, bool take_copy=false)
Related Functions inherited from Gst::Query
Glib::RefPtr< Gst::Query > | wrap (GstQuery* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gst::MiniObject
Glib::RefPtr< Gst::MiniObject > | wrap (GstMiniObject* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...

## Detailed Description

A new buffering query object.

See create() for more details.

## Member Function Documentation

## add_buffering_range()

bool Gst::QueryBuffering::add_buffering_range | ( | gint64 | start,
|  | gint64 | stop
| ) |  |

Set the buffering-ranges array field in query.

The current last start position of the array should be inferior to start.

Parameters

  start | start position of the range.
  stop | stop position of the range.

Returns
  a bool indicating if the range was added or not.

## create()

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

static

Constructs a new query object for querying the buffering status of a stream.

Parameters

  format | The default Gst::Format for the new query.

Returns
  The new Gst::QueryBuffering.

## get_n_buffering_ranges()

guint Gst::QueryBuffering::get_n_buffering_ranges | ( |  | ) | const

Retrieve the number of values currently stored in the buffered-ranges array of the query's structure.

Returns
  the range array size as a guint.

## parse() [1/3]

void Gst::QueryBuffering::parse | ( | bool & | busy,
|  | int & | percent
| ) |  | const

Get the busy flag and percentage of the buffered data.

The percent is a value between 0 and 100. The busy indicator is true when the buffering is in progress. Use the other parse() methods to parse individual values.

Parameters

  busy | The location to store the buffering busy flag.
  percent | The location to store the buffering percent.

## parse() [2/3]

void Gst::QueryBuffering::parse | ( | BufferingMode& | mode,
|  | int & | avg_in,
|  | int & | avg_out,
|  | gint64 | buffering_left
| ) |  | const

Extracts the buffering stats values from the query.

Use the other parse() methods to parse individual values.

Parameters

  mode | The location to store the buffering mode.
  avg_in | The location to store the average input rate.
  avg_out | The location to store the average output rate.
  buffering_left | The location to store the amount of buffering time left.

## parse() [3/3]

void Gst::QueryBuffering::parse | ( | Format& | format,
|  | gint64 & | start,
|  | gint64 & | stop,
|  | gint64 & | estimated_total
| ) |  | const

Parse the query, writing the format into format, and other results into the passed parameters.

Use the other parse() methods to parse individual values.

Parameters

  format | The location to store the format.
  start | The location to store the start.
  stop | The location to store the stop.
  estimated_total | The location to store the estimated total amount of download time.

## parse_busy()

bool Gst::QueryBuffering::parse_busy | ( |  | ) | const

Get the busy flag of the buffered data.

The busy indicator is true when the buffering is in progress.

Returns
  The buffering busy flag.

## parse_format()

Format Gst::QueryBuffering::parse_format | ( |  | ) | const

Parse the query, returning the format.

Returns
  The format.

## parse_input_rate()

int Gst::QueryBuffering::parse_input_rate | ( |  | ) | const

Extracts the average input rate from the query.

Returns
  The average input rate.

## parse_mode()

BufferingMode Gst::QueryBuffering::parse_mode | ( |  | ) | const

Extracts the buffering mode from the query.

Returns
  The the buffering mode.

## parse_nth_buffering_range()

bool Gst::QueryBuffering::parse_nth_buffering_range | ( | guint | index,
|  | gint64 & | start,
|  | gint64 & | stop
| ) |  | const

Parse an available query and get the start and stop values stored at the index of the buffered ranges array.

Parameters

  index | position in the buffered-ranges array to read.
  start | the start position to set, or NULL.
  stop | the stop position to set, or NULL.

Returns
  a bool indicating if the parsing succeeded.

## parse_output_rate()

int Gst::QueryBuffering::parse_output_rate | ( |  | ) | const

Extracts the average output rate from the query.

Returns
  The average output rate.

## parse_percent()

int Gst::QueryBuffering::parse_percent | ( |  | ) | const

Get the percentage of the buffered data.

The percent is a value between 0 and 100.

Returns
  The buffering percent.

## parse_start()

gint64 Gst::QueryBuffering::parse_start | ( |  | ) | const

Parse the query, returning the start range value.

Returns
  The start value.

## parse_stop()

gint64 Gst::QueryBuffering::parse_stop | ( |  | ) | const

Parse the query, returning the stop range value.

Returns
  The stop value.

## parse_time_left()

gint64 Gst::QueryBuffering::parse_time_left | ( |  | ) | const

Extracts the buffering time left from the query.

Returns
  The the amount of buffering time left.

## parse_total_time()

gint64 Gst::QueryBuffering::parse_total_time | ( |  | ) | const

Parse the query, returning the estimated total amount of download time.

Returns
  The estimated total amount of download time.

## set() [1/3]

void Gst::QueryBuffering::set | ( | bool | busy,
|  | int | percent
| ) |  |

Set the percentage of buffered data.

This is a value between 0 and 100. The busy indicator is true when the buffering is in progress.

Parameters

  busy | If buffering is busy.
  percent | A buffering percent.

## set() [2/3]

void Gst::QueryBuffering::set | ( | BufferingMode | mode,
|  | int | avg_in,
|  | int | avg_out,
|  | gint64 | buffering_left
| ) |  |

Configures the buffering stats values in query.

Parameters

  mode | A buffering mode.
  avg_in | The average input rate.
  avg_out | The average output rate.
  buffering_left | Amount of buffering time left.

## set() [3/3]

void Gst::QueryBuffering::set | ( | Format | format,
|  | gint64 | start,
|  | gint64 | stop,
|  | gint64 | estimated_total
| ) |  |

Set the available query result fields in query.

Parameters

  format | The format to set for the start and stop values.
  start | The start to set.
  stop | The stop to set.
  estimated_total | Estimated total amount of download time.