public Operation EnumerateSinks(SinkCallback cb) { return(EnumerateSinks((SinkInfo info, int eol) => { if (eol == 0) { cb(new Sink(this, info)); } })); }
[SuppressMessage("Microsoft.Design", "CA1030")] // It's specifically here to raise events protected void RaiseSinkCallback(SinkCallback <T> callback) { // Get the list of sinks in the lock List <Sink <T> > list = new List <Sink <T> >(); lock (m_lock) { list = new List <Sink <T> >(m_sinkList); } foreach (Sink <T> current in list) { current.BeginInvoke(callback); } }
public IAsyncResult BeginInvoke(SinkCallback <T> callback) { return(SafeInvoke.BeginInvoke(m_invoke, () => callback(this))); }
public void Invoke(SinkCallback <T> callback) { SafeInvoke.Invoke(m_invoke, () => callback(this)); }