CARMA C++
carma::util::ObserverRegistry Class Reference

All instances of the Observer class are assigned an ID and registered within this class. More...

#include <carma/util/ObserverRegistry.h>

Public Member Functions

int getNumObservers ()
 Get the number of registered observers. More...
 
bool isRegistered (int regID)
 See if an id is registered. More...
 
void lock ()
 Lock the registry. More...
 
int registerObserver ()
 Register objects to be notified when event occurs. More...
 
std::vector< int > registryIds ()
 Put all regIDs into a vector. More...
 
std::string registryToString ()
 Put all regIDs into a single line string. More...
 
void unlock ()
 Unlock the registry. More...
 
void unregisterObserver (int registrationId)
 Unregister objects to be notified when event occurs. More...
 
virtual ~ObserverRegistry ()
 Destructor. More...
 

Static Public Member Functions

static ObserverRegistryinstance ()
 Return singleton instance. More...
 

Detailed Description

All instances of the Observer class are assigned an ID and registered within this class.

An Observable can then see if an Observer registered with it still exists. The constructor/destructor of Observer will take care of registering with this singleton class.

Definition at line 38 of file ObserverRegistry.h.

Constructor & Destructor Documentation

virtual carma::util::ObserverRegistry::~ObserverRegistry ( )
virtual

Destructor.

Member Function Documentation

int carma::util::ObserverRegistry::getNumObservers ( )

Get the number of registered observers.

There is no test for uniqueness; if a single object is registered multiple times it will be counted multiple times.

static ObserverRegistry& carma::util::ObserverRegistry::instance ( )
static

Return singleton instance.

bool carma::util::ObserverRegistry::isRegistered ( int  regID)

See if an id is registered.

Parameters
regIDid to check
void carma::util::ObserverRegistry::lock ( )

Lock the registry.

int carma::util::ObserverRegistry::registerObserver ( )

Register objects to be notified when event occurs.

Parameters
observerObject to notify when event occurs
Returns
registerationId that can be used to unregister
std::vector<int> carma::util::ObserverRegistry::registryIds ( )

Put all regIDs into a vector.

std::string carma::util::ObserverRegistry::registryToString ( )

Put all regIDs into a single line string.

void carma::util::ObserverRegistry::unlock ( )

Unlock the registry.

void carma::util::ObserverRegistry::unregisterObserver ( int  registrationId)

Unregister objects to be notified when event occurs.

Parameters
registrationId
Exceptions
ErrorExceptionif regID is invalid

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