00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include "ghostpad.h"
00018 #include <gst/gstghostpad.h>
00019
00020 namespace QGst {
00021
00022 GhostPadPtr GhostPad::create(const PadPtr & target, const char *name)
00023 {
00024 GstPad *gp = gst_ghost_pad_new(name, target);
00025 if (gp) {
00026 gst_object_ref_sink(gp);
00027 }
00028 return GhostPadPtr::wrap(GST_GHOST_PAD(gp), false);
00029 }
00030
00031 GhostPadPtr GhostPad::create(PadDirection direction, const char *name)
00032 {
00033 GstPad *gp = gst_ghost_pad_new_no_target(name, static_cast<GstPadDirection>(direction));
00034 if (gp) {
00035 gst_object_ref_sink(gp);
00036 }
00037 return GhostPadPtr::wrap(GST_GHOST_PAD(gp), false);
00038 }
00039
00040 PadPtr GhostPad::target() const
00041 {
00042 return PadPtr::wrap(gst_ghost_pad_get_target(object<GstGhostPad>()), false);
00043 }
00044
00045 bool GhostPad::setTarget(const PadPtr & target)
00046 {
00047 return gst_ghost_pad_set_target(object<GstGhostPad>(), target);
00048 }
00049
00050 }