Inheritance diagram for HPS.EventHandler:
HPS.Object

Public Types

enum  HandleResult : uint { HandleResult.Handled = 0x00000000, HandleResult.NotHandled = 0x00000001 }
 

Public Member Functions

override void Dispose ()
 
delegate void DtorDelegate (IntPtr cPtr)
 
 EventHandler ()
 
 EventHandler (HPS.EventHandler in_that)
 
virtual HPS.EventHandler.HandleResult Handle (HPS.Event in_event)
 
override HPS.Type ObjectType ()
 
override void Reset ()
 
void Shutdown ()
 
bool Subscribe (HPS.EventDispatcher in_dispatcher, IntPtr in_type)
 
bool UnSubscribe (HPS.EventDispatcher in_dispatcher, IntPtr in_type)
 
bool UnSubscribe (HPS.EventDispatcher in_dispatcher)
 
void UnSubscribeEverything ()
 
- Public Member Functions inherited from HPS.Object
virtual bool Empty ()
 
IntPtr GetClassID ()
 
IntPtr GetInstanceID ()
 
bool HasType (HPS.Type in_mask)
 
 Object (HPS.Object that)
 
virtual HPS.Type Type ()
 

Protected Member Functions

override void deleteCptr ()
 
virtual bool DerivedClassHasMethod (string methodName, System.Type[] methodTypes)
 
override IntPtr GetNonDirectorClassID ()
 
virtual bool IsUserDerived ()
 

Static Protected Attributes

static Dictionary< IntPtr, Dictionary< IntPtr, HashSet< EventHandler > > > cachedObjects = new Dictionary<IntPtr, Dictionary<IntPtr, HashSet<EventHandler>>>()
 
static ReaderWriterLockSlim mapLock = new ReaderWriterLockSlim(LockRecursionPolicy.SupportsRecursion)
 

Additional Inherited Members

- Static Public Member Functions inherited from HPS.Object
static IntPtr ClassID< T > ()
 
- Protected Attributes inherited from HPS.Object
bool cMemOwn
 
HandleRef cptr
 

Detailed Description

The EventHandler class is the base class for any event handler that can be created. All custom event handlers should inherit from this.

Member Enumeration Documentation

◆ HandleResult

enum HPS.EventHandler.HandleResult : uint
strong

Enumeration of the values the EventHandler uses to indicate if it handled an event.

Enumerator
Handled 

The event was handled by this EventHandler. Consume the event if possible.

NotHandled 

The event was not handled by this EventHandler. Pass to the next handler if any or if possible.

Constructor & Destructor Documentation

◆ EventHandler() [1/2]

HPS.EventHandler.EventHandler ( )
inline

The default constructor creates an EventHandler object not subscribed to any event.

◆ EventHandler() [2/2]

HPS.EventHandler.EventHandler ( HPS.EventHandler  in_that)
inline

The copy constructor creates a new EventHandler object that points to the same underlying impl as the source EventHandler.

Parameters
in_thatThe source EventHandler to point to.

Member Function Documentation

◆ Handle()

virtual HPS.EventHandler.HandleResult HPS.EventHandler.Handle ( HPS.Event  in_event)
inlinevirtual

Function that gets triggered if this EventHandler receives an event it is subscribed to. This should be overridden by subclasses of EventHandler to perform any custom behavior.

Parameters
in_eventEvent which was triggered.
Returns
Handled if the event was handled, NotHandled otherwise.

◆ ObjectType()

override HPS.Type HPS.EventHandler.ObjectType ( )
inlinevirtual

This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).

Returns
The declared type of the object in question, which may differ from the true, underlying type.

Reimplemented from HPS.Object.

◆ Reset()

override void HPS.EventHandler.Reset ( )
inlinevirtual

Resets this object to its initial, uninitialized state.

Reimplemented from HPS.Object.

◆ Shutdown()

void HPS.EventHandler.Shutdown ( )
inline

Notifies the EventDispatcher that this handler is being invalidated and no further events should be dispatched to it. This method must be called in any derived class destructors.

◆ Subscribe()

bool HPS.EventHandler.Subscribe ( HPS.EventDispatcher  in_dispatcher,
IntPtr  in_type 
)
inline

Add this EventHandler object to the list of subscribers for events of the specified type on the specified EventDispatcher.

Parameters
in_dispatcherDispatcher from which to receive events of the given type.
in_typeType of event to receive from the dispatcher.
Returns
true if the subscription was successful, false otherwise.

◆ UnSubscribe() [1/2]

bool HPS.EventHandler.UnSubscribe ( HPS.EventDispatcher  in_dispatcher,
IntPtr  in_type 
)
inline

Remove this EventHandler object from the list of subscribers for events of the specified type on the specified EventDispatcher.

Parameters
in_dispatcherDispatcher from which to no longer receive events of the given type.
in_typeType of event to no longer receive from the dispatcher.
Returns
true if the unsubscription was successful, false otherwise.

◆ UnSubscribe() [2/2]

bool HPS.EventHandler.UnSubscribe ( HPS.EventDispatcher  in_dispatcher)
inline

Remove this EventHandler object from the list of subscribers for all events on the specified EventDispatcher.

Parameters
in_dispatcherDispatcher from which to no longer receive events.
Returns
true if the unsubscription was successful, false otherwise.

◆ UnSubscribeEverything()

void HPS.EventHandler.UnSubscribeEverything ( )
inline

Remove this EventHandler object from all events on all EventDispatchers.


The documentation for this class was generated from the following file:
  • internals/hps_core/source/cs/HPS.EventHandler.cs