Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QGstBin Class Reference

#include <qgst_p.h>

+ Inheritance diagram for QGstBin:
+ Collaboration diagram for QGstBin:

Public Member Functions

 QGstBin (const QGstBin &)=default
 
 QGstBin (QGstBin &&) noexcept=default
 
QGstBinoperator= (const QGstBin &)=default
 
QGstBinoperator= (QGstBin &&) noexcept=default
 
 QGstBin (GstBin *bin, RefMode mode=NeedsRef)
 
GstBin * bin () const
 
void addGhostPad (const QGstElement &child, const char *name)
 
void addGhostPad (const char *name, const QGstPad &pad)
 
bool syncChildrenState ()
 
void dumpGraph (const char *fileNamePrefix)
 
QGstElement findByName (const char *)
 
 QGstElement (const QGstElement &)=default
 
 QGstElement (QGstElement &&) noexcept=default
 
 QGstElement (GstElement *element, RefMode mode)
 
- Public Member Functions inherited from QGstElement
 QGstElement (const QGstElement &)=default
 
 QGstElement (QGstElement &&) noexcept=default
 
QGstElementoperator= (const QGstElement &)=default
 
QGstElementoperator= (QGstElement &&) noexcept=default
 
 QGstElement (GstElement *element, RefMode mode)
 
QGstPad staticPad (const char *name) const
 
QGstPad src () const
 
QGstPad sink () const
 
QGstPad getRequestPad (const char *name) const
 
void releaseRequestPad (const QGstPad &pad) const
 
GstState state (std::chrono::nanoseconds timeout=std::chrono::seconds(0)) const
 
GstStateChangeReturn setState (GstState state)
 
bool setStateSync (GstState state, std::chrono::nanoseconds timeout=std::chrono::seconds(1))
 
bool syncStateWithParent ()
 
bool finishStateChange (std::chrono::nanoseconds timeout=std::chrono::seconds(5))
 
void lockState (bool locked)
 
bool isStateLocked () const
 
void sendEvent (GstEvent *event) const
 
void sendEos () const
 
template<auto Member, typename T >
QGObjectHandlerConnection onPadAdded (T *instance)
 
template<auto Member, typename T >
QGObjectHandlerConnection onPadRemoved (T *instance)
 
template<auto Member, typename T >
QGObjectHandlerConnection onNoMorePads (T *instance)
 
GstClockTime baseTime () const
 
void setBaseTime (GstClockTime time) const
 
GstElement * element () const
 
QGstElement getParent () const
 
QGstPipeline getPipeline () const
 
 QGstObject (const QGstObject &)=default
 
 QGstObject (QGstObject &&) noexcept=default
 
- Public Member Functions inherited from QGstObject
 QGstObject (const QGstObject &)=default
 
 QGstObject (QGstObject &&) noexcept=default
 
QGstObjectoperator= (const QGstObject &)=default
 
QGstObjectoperator= (QGstObject &&) noexcept=default
 
void set (const char *property, const char *str)
 
void set (const char *property, bool b)
 
void set (const char *property, uint i)
 
void set (const char *property, int i)
 
void set (const char *property, qint64 i)
 
void set (const char *property, quint64 i)
 
void set (const char *property, double d)
 
void set (const char *property, const QGstObject &o)
 
void set (const char *property, const QGstCaps &c)
 
QGString getString (const char *property) const
 
QGstStructure getStructure (const char *property) const
 
bool getBool (const char *property) const
 
uint getUInt (const char *property) const
 
int getInt (const char *property) const
 
quint64 getUInt64 (const char *property) const
 
qint64 getInt64 (const char *property) const
 
float getFloat (const char *property) const
 
double getDouble (const char *property) const
 
QGstObject getObject (const char *property) const
 
QGObjectHandlerConnection connect (const char *name, GCallback callback, gpointer userData)
 
void disconnect (gulong handlerId)
 
GType type () const
 
GstObject * object () const
 
const char * name () const
 
- Public Member Functions inherited from QGstPointerImpl::QGstObjectWrapper< GstObject >
constexpr QGstObjectWrapper ()=default
 
 QGstObjectWrapper (GstObject *object, RefMode mode)
 
 QGstObjectWrapper (const QGstObjectWrapper &other)
 
 QGstObjectWrapper (QGstObjectWrapper &&other) noexcept
 
 ~QGstObjectWrapper ()
 
QGstObjectWrapperoperator= (const QGstObjectWrapper &other)
 
QGstObjectWrapperoperator= (QGstObjectWrapper &&other) noexcept
 
 operator bool () const
 
bool isNull () const
 
GstObject * release ()
 

Static Public Member Functions

static QGstBin create (const char *name)
 
static QGstBin createFromFactory (const char *factory, const char *name)
 
- Static Public Member Functions inherited from QGstElement
static QGstElement createFromFactory (const char *factory, const char *name=nullptr)
 
static QGstElement createFromFactory (GstElementFactory *, const char *name=nullptr)
 
static QGstElement createFromFactory (const QGstElementFactoryHandle &, const char *name=nullptr)
 
static QGstElement createFromDevice (const QGstDeviceHandle &, const char *name=nullptr)
 
static QGstElement createFromDevice (GstDevice *, const char *name=nullptr)
 

Public Attributes

template<typename... Ts>
std::enable_if_t<(std::is_base_of_v< QGstElement, Ts > &&...), void add )(const Ts &...ts)
 
template<typename... Ts>
std::enable_if_t<(std::is_base_of_v< QGstElement, Ts > &&...), void remove )(const Ts &...ts)
 
template<typename... Ts>
std::enable_if_t<(std::is_base_of_v< QGstElement, Ts > &&...), void stopAndRemoveElements )(Ts... ts)
 

Additional Inherited Members

- Public Types inherited from QGstPointerImpl::QGstObjectWrapper< GstObject >
enum  RefMode
 
- Protected Member Functions inherited from QGstPointerImpl::QGstObjectWrapper< GstObject >
GstObject * get () const
 

Detailed Description

Definition at line 660 of file qgst_p.h.

Constructor & Destructor Documentation

◆ QGstBin() [1/3]

QGstBin::QGstBin ( const QGstBin & )
default

Referenced by create().

+ Here is the caller graph for this function:

◆ QGstBin() [2/3]

QGstBin::QGstBin ( QGstBin && )
defaultnoexcept

◆ QGstBin() [3/3]

QGstBin::QGstBin ( GstBin * bin,
RefMode mode = NeedsRef )
explicit

Definition at line 1019 of file qgst.cpp.

Member Function Documentation

◆ addGhostPad() [1/2]

void QGstBin::addGhostPad ( const char * name,
const QGstPad & pad )

Definition at line 1037 of file qgst.cpp.

References QGstElement::element(), and QGstPad::pad().

+ Here is the call graph for this function:

◆ addGhostPad() [2/2]

void QGstBin::addGhostPad ( const QGstElement & child,
const char * name )

Definition at line 1032 of file qgst.cpp.

References addGhostPad(), and child.

Referenced by QGstreamerVideoSink::QGstreamerVideoSink(), and addGhostPad().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ bin()

GstBin * QGstBin::bin ( ) const

Definition at line 1027 of file qgst.cpp.

Referenced by QGstPipeline::dumpGraph(), dumpGraph(), findByName(), QGstreamerMediaPlayer::processBusMessage(), QGstreamerVideoOutput::setVideoSink(), and syncChildrenState().

+ Here is the caller graph for this function:

◆ create()

QGstBin QGstBin::create ( const char * name)
static

Definition at line 1004 of file qgst.cpp.

References QGstBin(), and QGstPointerImpl::QGstObjectWrapper< GstObject >::NeedsRef.

Referenced by QGstreamerVideoSink::QGstreamerVideoSink().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ createFromFactory()

QGstBin QGstBin::createFromFactory ( const char * factory,
const char * name )
static

Definition at line 1009 of file qgst.cpp.

References QGstElement::createFromFactory(), QGstElement::element(), factory, and Q_ASSERT.

Referenced by QGstreamerMediaEncoder::record().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ dumpGraph()

void QGstBin::dumpGraph ( const char * fileNamePrefix)

Definition at line 1047 of file qgst.cpp.

References bin(), and QGstPointerImpl::QGstObjectWrapper< GstObject >::isNull().

+ Here is the call graph for this function:

◆ findByName()

QGstElement QGstBin::findByName ( const char * name)

Definition at line 1060 of file qgst.cpp.

References bin(), and QGstPointerImpl::QGstObjectWrapper< GstObject >::NeedsRef.

+ Here is the call graph for this function:

◆ operator=() [1/2]

QGstBin & QGstBin::operator= ( const QGstBin & )
default

◆ operator=() [2/2]

QGstBin & QGstBin::operator= ( QGstBin && )
defaultnoexcept

◆ QGstElement() [1/3]

QGstElement::QGstElement ( const QGstElement & )
default

◆ QGstElement() [2/3]

QGstElement::QGstElement ( GstElement * element,
RefMode mode )
explicit

Definition at line 554 of file qgst.cpp.

◆ QGstElement() [3/3]

QGstElement::QGstElement ( QGstElement && )
defaultnoexcept

◆ syncChildrenState()

bool QGstBin::syncChildrenState ( )

Definition at line 1042 of file qgst.cpp.

References bin().

Referenced by QGstreamerMediaCapture::setAudioInput(), and QGstreamerMediaCapture::setAudioOutput().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ add

◆ remove

template<typename... Ts>
std::enable_if_t<(std::is_base_of_v< QGstElement, Ts > &&...), void QGstBin::remove) (const Ts &...ts)
inline

◆ stopAndRemoveElements

template<typename... Ts>
std::enable_if_t<(std::is_base_of_v< QGstElement, Ts > &&...), void QGstBin::stopAndRemoveElements) (Ts... ts)
inline

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