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


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

namespace Gst
{

/** A Wrapper for the typefind plugin.
 * Please note that 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 TypeFindElement
: public Gst::Element
{
  _CLASS_GOBJECT(TypeFindElement, GstTypeFindElement, GST_TYPE_FIND_ELEMENT_GSTREAMERMM, Gst::Element, GstElement)
  _IS_GSTREAMERMM_PLUGIN
  _NO_WRAP_INIT_REGISTRATION
  _CUSTOM_WRAP_FUNCTION

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

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

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

  _WRAP_PROPERTY("caps", Glib::RefPtr<Gst::Caps>)
  _WRAP_PROPERTY("minimum", guint)
  _WRAP_PROPERTY("force-caps", Glib::RefPtr<Gst::Caps>)

#m4 _CONVERSION(`GstCaps*', `const Glib::RefPtr<Gst::Caps>&', `Glib::wrap($3, true)')
  _WRAP_SIGNAL(void have_type(guint arg0, const Glib::RefPtr<Gst::Caps>& arg1), "have-type", no_default_handler)
};

} // namespace Gst
