using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Firebird2D.EventPipelines
{
///
/// Interface for the Firebird event Pipeline
///
public interface I_Pipeline
{
///
/// Class witch owns the Pipeline and has the right to send events or delete the pipeline
///
object PipelineMaster { get; }
///
/// Check if no one subscribed to the event
///
bool IsEventEmpty { get; }
///
/// Subscribe to this event Pipeline
///
/// Handler witch should be Invoked when the event is send
void Subscribe(Delegate handler);
///
/// Unsubscribe from this event Pipeline
///
/// Handler witch should be removed from the Pipeline
void Unsubscribe(Delegate handler);
}
}