Embedded Template Library  1.0
 All Classes Files Functions Variables Typedefs Friends Modules Pages
etl::observable< TObserver, MAX_OBSERVERS > Class Template Reference

#include <observer.h>

Public Types

typedef size_t size_type
 
typedef etl::vector< TObserver
*, MAX_OBSERVERS > 
Observer_List
 

Public Member Functions

void add_observer (TObserver &observer)
 
void remove_observer (TObserver &observer)
 
void clear_observers ()
 Clear all observers from the list.
 
size_type number_of_observers () const
 Returns the number of observers.
 
template<typename TNotification >
void notify_observers (TNotification n)
 

Detailed Description

template<typename TObserver, const size_t MAX_OBSERVERS>
class etl::observable< TObserver, MAX_OBSERVERS >

The object that is being observed.

Template Parameters
TObserverThe observer type.
MAX_OBSERVERSThe maximum number of observers that can be accomodated.

Member Function Documentation

template<typename TObserver , const size_t MAX_OBSERVERS>
void etl::observable< TObserver, MAX_OBSERVERS >::add_observer ( TObserver &  observer)
inline

Add an observer to the list. If ETL_THROW_EXCEPTIONS is defined then an etl::observable_observer_list_full is thrown if the observer list is already full.

Parameters
observerA reference to the observer.
template<typename TObserver , const size_t MAX_OBSERVERS>
template<typename TNotification >
void etl::observable< TObserver, MAX_OBSERVERS >::notify_observers ( TNotification  n)
inline

Notify all of the observers, sending them the notification.

Template Parameters
TNotificationthe notification type.
Parameters
nThe notification.
template<typename TObserver , const size_t MAX_OBSERVERS>
void etl::observable< TObserver, MAX_OBSERVERS >::remove_observer ( TObserver &  observer)
inline

Remove a particular observer from the list.

Parameters
observerA reference to the observer.

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