Wrapper class for GstQuery. More...
|MiniObjectPtr||copy () const|
|bool||isWritable () const|
|MiniObjectPtr||makeWritable () const|
|QueryType||type () const|
|QString||typeName () const|
|template<class T >|
|T *||object () const|
|virtual void||ref (bool increaseRef)|
|virtual void||unref ()|
Wrapper class for GstQuery.
Queries are lightweight objects that are sent from the application directly to elements or pads using the query() methods. A typical usage is to find out the duration or current position of media, or to display the status of a buffering operation.
Queries are implemented as a subclass of MiniObject with a generic GstStructure as the content. This allows for writing custom queries without requiring an API change while allowing a wide range of different types of queries.
QGst::Query is the common base class for all query types.
In these bindings, for convenience, each query type has its own Query subclass. The create() method in the subclasses should be used to create a query object. This does not reflect 1-1 the native C API, where there is only one Query class with tens of 'new_foo' and 'parse_foo' methods.
Note that the Query subclasses cannot be used with Value::get(), since a GValue will actually contain a GstQuery (the subclasses do not exist in C) and Value::get() is not able to do dynamic casts. As a result of that, Query subclasses also cannot be used as arguments in slots connected to GObject signals, even though you may know that your slot will only be called with that type of queries.