// This file was generated by the Gtk# code generator.
// Any changes made will be lost if regenerated.

namespace Gst {

	using System;

	public delegate Gst.MiniObject MiniObjectCopyFunction(Gst.MiniObject obj);

}
