Added initial documentation tree using doxygen. More tweaks on the license text ensur...
[lwes-dotnet/github-mirror.git] / Org.Lwes / Listener / IEventSinkRegistrationKey.cs
blob9d5d54430cf8bb7f5c0e65b88710259b71cb6299
1 //
2 // This file is part of the LWES .NET Binding (LWES.net)
3 //
4 // COPYRIGHT© 2009, Phillip Clark (cerebralkungfu[at*g mail[dot*com)
5 // original .NET implementation
6 //
7 // LWES.net is free software: you can redistribute it and/or modify
8 // it under the terms of the Lesser GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
12 // LWES.net is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // Lesser GNU General Public License for more details.
17 // You should have received a copy of the Lesser GNU General Public License
18 // along with LWES.net. If not, see <http://www.gnu.org/licenses/>.
20 namespace Org.Lwes.Listener
22 using System;
24 /// <summary>
25 /// Registration key for event sinks.
26 /// </summary>
27 public interface IEventSinkRegistrationKey
29 /// <summary>
30 /// An opaque handback object.
31 /// </summary>
32 Object Handback
34 get;
35 set;
38 /// <summary>
39 /// The listener with which the event sink is registered.
40 /// </summary>
41 IEventListener Listener
43 get;
46 /// <summary>
47 /// The status of the event sink.
48 /// </summary>
49 EventSinkStatus Status
51 get;
54 /// <summary>
55 /// Activates the event sink.
56 /// </summary>
57 /// <returns><em>true</em> if the event sink has not already been canceled; otherwise <em>false</em></returns>
58 bool Activate();
60 /// <summary>
61 /// Cancels a registration. An event sink whose registration is canceled will no longer
62 /// receive event or garbage notification.
63 /// </summary>
64 void Cancel();
66 /// <summary>
67 /// Disables garbage notification for a sink.
68 /// </summary>
69 void DisableGarbageNotification();
71 /// <summary>
72 /// Suspends the event sink. An event sink whose registration is suspended will not
73 /// receive event or garbage notification until it is re-activated.
74 /// </summary>
75 /// <returns><em>true</em> if the event sink has not already been canceled; otherwise <em>false</em></returns>
76 bool Suspend();