Public Member Functions | Private Types | Private Member Functions | Private Attributes

VizKit::VisualEnsemble Class Reference

#include <VisualEnsemble.h>

List of all members.

Public Member Functions

 VisualEnsemble ()
 ~VisualEnsemble ()
 VisualEnsemble (const VisualEnsemble &other)
VisualEnsembleoperator= (const VisualEnsemble &other)
void showEnsemble (const VisualPlayerState &visualPlayerState)
void addEnsembleMember (VisualActor *aVisualActor)
void registerObserverForNotification (VisualActor *aVisualActor, const VisualNotificationKey aNotificationKey)
void removeObserverOfNotification (VisualActor *aVisualActor, const VisualNotificationKey aNotificationKey)
void dispatchNotification (VisualNotification &aNotification)
VisualActorgetVisualActorByName (const char *const aVisualActorName)

Private Types

typedef std::vector
< VisualActor * > 
VisualEnsembleActors
typedef
VisualEnsembleActors::iterator 
VisualEnsembleActorsIterator
typedef std::multimap
< VisualNotificationKey,
VisualActor * > 
ObserverMap
typedef ObserverMap::iterator ObserverMapIterator

Private Member Functions

void copy (const VisualEnsemble &other)

Private Attributes

uint16 visualActorIterIndex
VisualEnsembleActors visualEnsembleActors
ObserverMap observerMap

Detailed Description

The VisualEnsemble is a group of all actors. The one and only VisualEnsemble of VizKit is owned by the VisualStageControl. With its main method showEnsemble(), the VisualEnsemble calls each VisualActor to show(). The VisualEnsemble also passes VisualNotifications to VisualActors that are registered as observers.


Member Typedef Documentation

The ObserverMap is a multimap of notifications (event types) and actors.

typedef ObserverMap::iterator VizKit::VisualEnsemble::ObserverMapIterator [private]

The ObserverMapIterator is an iterator of the ObserverMap.

VisualEnsembleActors are collected as a vector of pointers to VisualActors.

typedef VisualEnsembleActors::iterator VizKit::VisualEnsemble::VisualEnsembleActorsIterator [private]

The VisualEnsembleActorsIterator is an iterator of the VisualEnsembleActors.


Constructor & Destructor Documentation

VisualEnsemble::VisualEnsemble (  ) 

The constructor.

VisualEnsemble::~VisualEnsemble (  ) 

The destructor.

VisualEnsemble::VisualEnsemble ( const VisualEnsemble other  ) 

Copy constructor.


Member Function Documentation

void VisualEnsemble::addEnsembleMember ( VisualActor aVisualActor  ) 

Adds a VisualActor to the VisualEnsemble.

Parameters:
aVisualActor A pointer to a VisualActor.
Remarks:
VisualEnsemble stores the pointer to the VisualActor and deletes the memory when VisualEnsemble is destructed.
void VisualEnsemble::copy ( const VisualEnsemble other  )  [private]

Copy method for assignment operator and copy constructor.

Parameters:
other Another VisualEnsemble.
void VisualEnsemble::dispatchNotification ( VisualNotification aNotification  ) 

The VisualEnsemble receives notifications that are passed to the actors of the ensemble. Notifications ensure loose connections between external processes and the VisualEnsemble. External processes can package and send a notification to the VisualEnsemble. The VisualEnsemble processes the notification and each registered actor receives the notification (event/message).

Parameters:
aNotification A notification object.
VisualActor * VisualEnsemble::getVisualActorByName ( const char *const   aVisualActorName  ) 

Returns a pointer to a VisualActor whose name is aVisualActorName.

Parameters:
aVisualActorName The name of the visual actor.
Returns:
A pointer to a VisualActor whose name is aVisualActorName or NULL if none is found.
VisualEnsemble & VisualEnsemble::operator= ( const VisualEnsemble other  ) 

Assignment operator.

void VisualEnsemble::registerObserverForNotification ( VisualActor aVisualActor,
const VisualNotificationKey  aNotificationKey 
)

Registers a VisualActor for a specific notification (event/message).

Parameters:
aVisualActor A visual actor.
aNotificationKey An enum that denotes a notification.
void VisualEnsemble::removeObserverOfNotification ( VisualActor aVisualActor,
const VisualNotificationKey  aNotificationKey 
)

Removes a VisualActor from the list of observers for a specific notification (event/message).

Parameters:
aVisualActor A visual actor.
aNotificationKey An enum that denotes a notification.
void VisualEnsemble::showEnsemble ( const VisualPlayerState visualPlayerState  ) 

Shows the show of the ensemble. The show method of all active actors is called.

Parameters:
visualPlayerState Read-only access to the VisualPlayerState.
Returns:
0 for no error. 1 if error occured.

Member Data Documentation

Multimap of all actors of the ensemble that are registered as observers.

Current index of internal iterator.

Vector of all actors of the ensemble.


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

Generated on Sun Sep 26 2010 13:29:36 for VizKit by doxygen 1.7.1