|
| EventDispatcher () |
| Creates the event dispatcher and initializes the event type mapping. More...
|
|
unsafe bool | Publish (EventBase e) |
| Publish an event. More...
|
|
void | Clear () |
| Removes all subscriptions. More...
|
|
int | GetIndex< TDispatchable > () |
| Returns the index of a specific dispatchable type. Throws in case the type is not registered. More...
|
|
void | RemoveDeadListeners () |
| Removes every subscription for which GetListenerStatus returns ListenerStatus.Dead More...
|
|
DispatcherSubscription | Subscribe< TDispatchable > (object listener, DispatchableHandler< TDispatchable > handler, bool once=false, uint flags=0, DispatchableFilter filter=null) |
| Creates a subscription. Subscriptions can be cancelled manually by calling UnsubscribeHandler<TDispatchable>(DispatchableHandler<TDispatchable>), but as long as the derived class overrides GetListenerStatus(object, uint) and calls DispatcherBase.RemoveDeadListeners() periodically, the dispatcher will be free of memory leaks. More...
|
|
IDisposable | SubscribeManual< TDispatchable > (DispatchableHandler< TDispatchable > handler, bool once=false, DispatchableFilter filter=null) |
| Creates a subscription that is active until the caller disposes the result. More...
|
|
IDisposable | SubscribeManual< TDispatchable > (object listener, DispatchableHandler< TDispatchable > handler, bool once=false, DispatchableFilter filter=null) |
| Creates a subscription that is active until the caller disposes the result or calls Unsubscribe. More...
|
|
bool | Unsubscribe (DispatcherSubscription subscription) |
| Cancel a specific subscription. More...
|
|
bool | UnsubscribeHandler< TDispatchable > (DispatchableHandler< TDispatchable > handler) |
| Cancel every subscription using a handler. More...
|
|
bool | UnsubscribeListener (object listener) |
| Cancel every subscription for a listener. More...
|
|
bool | UnsubscribeListener< TDispatchable > (object listener) |
| Cancel every specific subscription type for a listener. More...
|
|
|
enum | ListenerStatus |
| Status of a listener. Used to determine if a listener is still alive. More...
|
|
| DispatcherBase (Dictionary< Type, Int32 > typeToIndex) |
| Initializes the dispatcher with a mapping of types to ids. The ids are used to quickly find the correct event handler. More...
|
|
virtual ListenerStatus | GetListenerStatus (object listener, uint flags) |
| Returns ListenerStatus.Active if listener is not null , ListenerStatus.Dead otherwise. Override this method to provide custom listener status. More...
|
|
bool | InvokeMeta (int metaIndex, IDispatchable e) |
| Invokes handlers for a specific dispatchable. More...
|
|
bool | InvokeMeta< TDispatchable > (TDispatchable e) |
| Invokes handlers for a specific dispatchable. More...
|
|
DispatcherSubscription | SubscribeInternal< TDispatchable > (object listener, DispatchableHandler< TDispatchable > handler, DispatchableFilter filter, uint flags) |
| Creates a subscription. Subscriptions can be cancelled manually by calling UnsubscribeHandler<TDispatchable>(DispatchableHandler<TDispatchable>). More...
|
|
IDisposable | SubscribeManualInternal< TDispatchable > (object listener, DispatchableHandler< TDispatchable > handler, DispatchableFilter filter, bool once) |
| Creates a subscription that is active until the caller disposes the result. More...
|
|
bool | UnsubscribeInternal< TDispatchable > (object listener, DispatchableHandler< TDispatchable > handler) |
| Unsubscribes a listener from a handler. More...
|
|
bool | IsEmpty [get] |
| Returns true if there are no active subscriptions. More...
|
|
DispatcherBase | Next [get, set] |
| A reference to the next dispatcher in the chain. If set, the dispatcher will forward events to the next dispatcher after. More...
|
|
Publish, subscribe pattern for Quantum events: EventBase. Quantum events are used to communicate view relevant game updates from the simulation to the view.