gstreamer/gstreamer-sharp/plugins-base/DecodeBin.cs
Khaled Mohammed 0e15441c8c Updated DynamicSignal.cs and files plugins-base to use the new
DynamicSignal class.


git-svn-id: svn://anonsvn.mono-project.com/source/branches/abock/gstreamer-sharp@63336 e3ebcda4-bce8-0310-ba0a-eca2169e7518
2006-08-04 04:00:43 +00:00

58 lines
1.5 KiB
C#

//
// DecodeBin.cs: decodebin element binding
//
// Authors:
// Aaron Bockover (abockover@novell.com)
//
// (C) 2006 Novell, Inc.
//
using System;
using Gst;
namespace Gst
{
public delegate void NewDecodedPadHandler(object o, NewDecodedPadArgs args);
public class NewDecodedPadArgs : GLib.SignalArgs
{
public NewDecodedPadArgs(GLib.SignalArgs args) : base(args)
{
}
public Gst.Pad Pad {
get { return (Gst.Pad)Args[1]; }
}
public bool Last {
get { return (bool)Args[2]; }
}
}
public class DecodeBin : Bin
{
private Delegate new_decoded_pad_delegate;
public DecodeBin(IntPtr raw) : base(raw)
{
}
protected virtual void OnNewDecodedPad(object o, GLib.SignalArgs args)
{
BindingHelper.InvokeProxySignalDelegate(new_decoded_pad_delegate,
typeof(NewDecodedPadArgs), o, args);
}
public event NewDecodedPadHandler NewDecodedPad {
add {
new_decoded_pad_delegate = BindingHelper.AddProxySignalDelegate(this,
"new-decoded-pad", OnNewDecodedPad, new_decoded_pad_delegate, value);
}
remove {
new_decoded_pad_delegate = BindingHelper.RemoveProxySignalDelegate(this,
"new-decoded-pad", OnNewDecodedPad, new_decoded_pad_delegate, value);
}
}
}
}