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

namespace Gst.PbUtils {

	using System;

	public delegate void SourceSetupHandler(object o, SourceSetupArgs args);

	public class SourceSetupArgs : GLib.SignalArgs {
		public Gst.Element Source{
			get {
				return (Gst.Element) Args [0];
			}
		}

	}
}
