// Generated by generate_plugin_gmmproc_file. Don't edit this file.


#include <gstreamermm/pushsrc.h>
_DEFS(gstreamermm,gst)

namespace Gst
{

_WRAP_ENUM(VideoTestSrcPattern,GstVideoTestSrcPattern)
_CONV_ENUM(Gst,VideoTestSrcPattern)

_WRAP_ENUM(VideoTestSrcColorSpec,GstVideoTestSrcColorSpec)
_CONV_ENUM(Gst,VideoTestSrcColorSpec)

/** A Wrapper for the videotestsrc plugin.
 * Please note that, though using the underlying GObject is fine, using its C
 * <B>type</B> is not guaranteed to be API stable across releases because it is
 * not guaranteed to always remain the same.  Also, not all plug-ins are
 * available on all systems so care must be taken that they exist before they
 * are used, otherwise there will be errors and possibly a crash.
 *
 * @ingroup GstPlugins
 */
class VideoTestSrc
: public Gst::PushSrc
{
  _CLASS_GOBJECT(VideoTestSrc, GstVideoTestSrc, GST_VIDEO_TEST_SRC_GSTREAMERMM, Gst::PushSrc, GstPushSrc)
  _IS_GSTREAMERMM_PLUGIN

protected:
  VideoTestSrc();
  explicit VideoTestSrc(const Glib::ustring& name);

public:
  /** Creates a new videotestsrc plugin with a unique name.
   */
  _WRAP_CREATE()

  /** Creates a new videotestsrc plugin with the given name.
   */
  _WRAP_CREATE(const Glib::ustring& name)

  _WRAP_PROPERTY("pattern", Gst::VideoTestSrcPattern)
  _WRAP_PROPERTY("timestamp-offset", gint64)
  _WRAP_PROPERTY("is-live", bool)
  _WRAP_PROPERTY("peer-alloc", bool)
  _WRAP_PROPERTY("colorspec", Gst::VideoTestSrcColorSpec)
  _WRAP_PROPERTY("k0", int)
  _WRAP_PROPERTY("kx", int)
  _WRAP_PROPERTY("ky", int)
  _WRAP_PROPERTY("kt", int)
  _WRAP_PROPERTY("kxt", int)
  _WRAP_PROPERTY("kyt", int)
  _WRAP_PROPERTY("kxy", int)
  _WRAP_PROPERTY("kx2", int)
  _WRAP_PROPERTY("ky2", int)
  _WRAP_PROPERTY("kt2", int)
  _WRAP_PROPERTY("xoffset", int)
  _WRAP_PROPERTY("yoffset", int)
  _WRAP_PROPERTY("foreground-color", guint)
  _WRAP_PROPERTY("background-color", guint)
  _WRAP_PROPERTY("horizontal-speed", int)
};

} // namespace Gst
