Observable< T > Class Template Reference

#include <Ample.h>

List of all members.

Public Types

typedef Observer< T > ObserverType
typedef std::vector< T * > ObserverList

Public Member Functions

virtual ~Observable (void)
void addObserver (T &observer)
void removeObserver (T &observer)
void removeObserver (Observer< T > &observer)
const ObserverListgetObservers (void) const

Detailed Description

template<typename T>
class verse::ample::Observable< T >

Base class for all observable objects.


Member Typedef Documentation

typedef std::vector<T*> ObserverList
typedef Observer<T> ObserverType

Constructor & Destructor Documentation

~Observable ( void   )  [inline, virtual]

Destructor. Detaches all attached observers.

References Observable< T >::removeObserver().


Member Function Documentation

void addObserver ( T &  observer  )  [inline]

Adds the specified observer to this object.

Parameters:
observer The observer to add.
Remarks:
An observer can only be added once. Additional additions are ignored.
const Observable< T >::ObserverList & getObservers ( void   )  const [inline]
Returns:
The list of observers attached to this object.
void removeObserver ( Observer< T > &  observer  )  [inline]

Removes the specified observer from this object.

Parameters:
observer The observer to remove.
void removeObserver ( T &  observer  )  [inline]

Removes the specified observer from this object.

Parameters:
observer The observer to remove.

Referenced by Observable< T >::~Observable().


Generated on Thu Nov 19 20:19:26 2009 for Ample by  doxygen 1.6.1