All Classes Functions Variables Typedefs Friends Pages
Public Member Functions | List of all members
Glympse::IEventSink Struct Referenceabstract

Any class should implement this interface to be capable of spreading events to subscribers. More...

#include <IEventSink.h>

Inheritance diagram for Glympse::IEventSink:
Inheritance graph
[legend]

Public Member Functions

virtual bool addListener (const GEventListener &eventListener)=0
 Registeres event listener on the sink. More...
 
virtual bool removeListener (const GEventListener &eventListener)=0
 Unsubscribes listener from events coming from this sink.
 
virtual GArray< GEventListener >
::ptr 
getListeners ()=0
 Provides access to the collection of current listeners. More...
 
virtual bool hasContext (int64 key)=0
 Checks, where user context identified by key is already associated with the object.
 
virtual void associateContext (int64 key, const GCommonObj &value)=0
 Associates specific context (user data) with the sink. More...
 
virtual GCommonObj getContext (int64 key)=0
 Returns context associated with the sink, or NULL, if it is not found.
 
virtual void clearContext (int64 key)=0
 Clears context identified by key argument.
 
virtual GEnumeration< GLong >::ptr getContextKeys ()=0
 Gets enumeration of all context keys associated with the sink.
 
virtual void deriveContext (const GEventSink &sink)=0
 Derives context from another sink object.
 
- Public Member Functions inherited from Glympse::IEventListener
virtual void eventsOccurred (const GGlympse &glympse, int32 listener, int32 events, const GCommonObj &obj)=0
 This method is invoked each time, when sink object notifies subscriber on an event. More...
 
- Public Member Functions inherited from Glympse::ICommon
virtual int32 retain ()=0
 Add a reference to our object in a COM-like way.
 
virtual int32 release ()=0
 Release a reference to our object in a COM-like way.
 
virtual int32 hold ()=0
 Add a reference to our object in a COM-like way.
 
virtual int32 unhold ()=0
 Release a reference to our object in a COM-like way.
 
virtual int32 hashCode ()=0
 Returns an integer hash code for this object.
 
virtual bool equals (const GCommonObj &o)=0
 Compares this instance with the specified object and indicates if they are equal. More...
 
virtual GString toString ()=0
 Returns a string containing a concise, human-readable description of this object. More...
 
virtual void attachObject (const GCommon &obj)=0
 Asociates arbitrary object with the instance.
 
virtual GCommon extractObject ()=0
 Extracts associated object or NULL if no association is established.
 

Additional Inherited Members

- Protected Member Functions inherited from Glympse::ICommon
virtual ~ICommon ()
 Destructor is protected to deny explicit object deallocation. More...
 

Detailed Description

Any class should implement this interface to be capable of spreading events to subscribers.

Each subscriber should implement IEventListener interface.

IEventSink also provides a chance to associate user data (context) with an object. Host applications should use key values from range [GC::CONTEXT_KEY_MIN, GC::CONTEXT_KEY_MAX].

Member Function Documentation

virtual bool Glympse::IEventSink::addListener ( const GEventListener eventListener)
pure virtual

Registeres event listener on the sink.

It is not allowed to register the same listener multiple times.

virtual void Glympse::IEventSink::associateContext ( int64  key,
const GCommonObj value 
)
pure virtual

Associates specific context (user data) with the sink.

The association is only valid during object life time and is never persisted by Glympse API.

virtual GArray<GEventListener>::ptr Glympse::IEventSink::getListeners ( )
pure virtual

Provides access to the collection of current listeners.

It is not required to check, whether listener is already on the list before adding it via addListener. addListener performs this check itself.


The documentation for this struct was generated from the following file: