19 #include "../QGlib/error.h"
27 GstElement *bin = gst_bin_new(name);
29 gst_object_ref_sink(bin);
38 GstElement *e = gst_parse_bin_from_description_full(description, ghostUnlinkedPads,
39 NULL, GST_PARSE_FLAG_FATAL_ERRORS, &error);
44 gst_object_ref_sink(e);
51 return gst_bin_add(object<GstBin>(), element);
56 return gst_bin_remove(object<GstBin>(), element);
64 e = gst_bin_get_by_name(object<GstBin>(), name);
67 e = gst_bin_get_by_name_recurse_up(object<GstBin>(), name);
70 Q_ASSERT_X(
false,
"QGst::Bin::getElementByName",
"Invalid RecursionType");
77 return ElementPtr::wrap(gst_bin_get_by_interface(object<GstBin>(), interfaceType),
false);
82 return PadPtr::wrap(gst_bin_find_unlinked_pad(object<GstBin>(),
83 static_cast<GstPadDirection
>(direction)),
false);
86 bool Bin::recalculateLatency()
88 return gst_bin_recalculate_latency(object<GstBin>());
Wrapper class for GError.
Smart pointer class for working with wrapper classes that support reference counting.
static RefPointer< T > wrap(typename T::CType *nativePtr, bool increaseRef=true)
bool add(const ElementPtr &element)
static BinPtr create(const char *name=NULL)
PadPtr findUnlinkedPad(PadDirection direction) const
static BinPtr fromDescription(const char *description, BinFromDescriptionOption ghostUnlinkedPads=Ghost)
ElementPtr getElementByName(const char *name, RecursionType recursionType=RecurseDown) const
QGlib::RefPointer< T > getElementByInterface() const
bool remove(const ElementPtr &element)
Wrappers for GStreamer classes.