Wire
public delegate void WireEventHandler<T>(T value);
public interface IWire
{
}
public interface IWireInput : IWire
{
}
public interface IWireOutput : IWire
{
}
public interface IWireInput<T> : IWireInput
{
event WireEventHandler<T> OnWireInputChanged;
T input
{
get;
}
}
public interface IWireOutput<T> : IWireOutput
{
T output
{
get;
set;
}
}