| VRS - The Virtual Rendering System |
| version 3.3 |
#include <vrs/sg/timemanager.h>

Public Member Functions | |
| TimeManager (double delay) | |
| virtual void | appendBehavior (BehaviorNode *node) |
| virtual void | prependBehavior (BehaviorNode *node) |
| virtual void | insertBehavior (int, BehaviorNode *node) |
| virtual void | removeBehavior (int i) |
| virtual void | removeBehavior (BehaviorNode *node) |
| virtual bool | containsBehavior (BehaviorNode *node) const |
| Methods for managing the list of children. | |
| virtual int | behaviors () const |
| virtual BehaviorNode * | behavior (int i) const |
| virtual int | handle (Event *e) |
| virtual void | switchOn (BehaviorNode *node, Clock *clock=NULL) |
| virtual void | switchOff (BehaviorNode *node) |
| virtual bool | isSwitchedOn (BehaviorNode *node) const |
| virtual void | reset (BehaviorNode *) |
| VRS_TYPEINFO (TimeManager, Manager) | |
Protected Member Functions | |
| virtual void | acceptChildren (std::vector< Visitable * > &appendChildrenHere) const |
| VRS::TimeManager::TimeManager | ( | double | delay | ) |
An `TimeManger' propagates time events to its children. A child can be switch on (i.e., it will receive events) or switch off (i.e., it will not receive events). Based on time requirement of a child, the time manager takes care that the child receives time events during its life time. A child is automatically switched off when its life time has been exceeded.
| virtual void VRS::TimeManager::appendBehavior | ( | BehaviorNode * | node | ) | [virtual] |
| virtual void VRS::TimeManager::prependBehavior | ( | BehaviorNode * | node | ) | [virtual] |
| virtual void VRS::TimeManager::insertBehavior | ( | int | , | |
| BehaviorNode * | node | |||
| ) | [virtual] |
| virtual void VRS::TimeManager::removeBehavior | ( | int | i | ) | [virtual] |
| virtual void VRS::TimeManager::removeBehavior | ( | BehaviorNode * | node | ) | [virtual] |
| virtual bool VRS::TimeManager::containsBehavior | ( | BehaviorNode * | node | ) | const [virtual] |
Methods for managing the list of children.
| virtual int VRS::TimeManager::behaviors | ( | ) | const [virtual] |
| virtual BehaviorNode* VRS::TimeManager::behavior | ( | int | i | ) | const [virtual] |
| virtual int VRS::TimeManager::handle | ( | Event * | e | ) | [virtual] |
VRSTime managers propragate events to its associated behavior nodes. In particular, time managers handle life times, that is, time managers activate and deactivate behavior nodes according to their life times.
Implements VRS::Manager.
| virtual void VRS::TimeManager::switchOn | ( | BehaviorNode * | node, | |
| Clock * | clock = NULL | |||
| ) | [virtual] |
| virtual void VRS::TimeManager::switchOff | ( | BehaviorNode * | node | ) | [virtual] |
| virtual bool VRS::TimeManager::isSwitchedOn | ( | BehaviorNode * | node | ) | const [virtual] |
If a child node is switched on, the time managers asks for the time requirements of the child. The time requirement must be infinite or finite. If the time requirement of a child is not defined, it cannot be switched on. A child which is going to be switched on will be activated. A child which is going to be switched off will be deactivated. You cannot switch on a child if it is already switched on. You cannot swtich off a child if it is not switched on. A child is switched off automatically when its lifetime exceeds.
| virtual void VRS::TimeManager::reset | ( | BehaviorNode * | ) | [virtual] |
| VRS::TimeManager::VRS_TYPEINFO | ( | TimeManager | , | |
| Manager | ||||
| ) |
| virtual void VRS::TimeManager::acceptChildren | ( | std::vector< Visitable * > & | appendChildrenHere | ) | const [protected, virtual] |
Reimplemented from VRS::Visitable.