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

Public Member Functions | |
| SceneSwitch () | |
| virtual void | append (SceneNode *node) |
| virtual void | prepend (SceneNode *node) |
| virtual void | insert (int, SceneNode *node) |
| virtual void | remove (int i) |
| virtual void | remove (SceneNode *node) |
| virtual void | clear () |
| These methods manage the internal list of scene subgraphs. | |
| virtual void | setMask (SceneNode *node, Canvas *canvas) |
| virtual Canvas * | getMask (SceneNode *node) const |
| Assigns or returns the canvas for a specific child node. | |
| virtual int | childNodes () const |
| virtual SceneNode * | childNode (int i) const |
| Access to all child nodes of the switch node. | |
| virtual void | evaluate (Engine *engine) |
| virtual SceneNodeVisitor::TraversalFlag | traverse (SceneNodeVisitor *visitor) |
| virtual Bounds | boundingBox (Engine *engine) const |
| virtual void | install (Engine *engine) |
| virtual void | deinstall (Engine *engine) |
| VRS_TYPEINFO (SceneSwitch, SceneNode) | |
| VRS_SERIALIZABLE (SceneSwitch) | |
Protected Member Functions | |
| virtual void | acceptChildren (std::vector< Visitable * > &appendChildrenHere) const |
| VRS::SceneSwitch::SceneSwitch | ( | ) |
An SceneSwitch node groups scene subgraphs and assigns each subgraph to a specific canvas. Based on the canvas whose engine evaluates the scene graph, only those scene subgraphs are selected which are assigned to the canvas. This allows for specifying canvas-dependent variants in a scene graph.
| virtual void VRS::SceneSwitch::append | ( | SceneNode * | node | ) | [virtual] |
| virtual void VRS::SceneSwitch::prepend | ( | SceneNode * | node | ) | [virtual] |
| virtual void VRS::SceneSwitch::insert | ( | int | , | |
| SceneNode * | node | |||
| ) | [virtual] |
| virtual void VRS::SceneSwitch::remove | ( | int | i | ) | [virtual] |
| virtual void VRS::SceneSwitch::remove | ( | SceneNode * | node | ) | [virtual] |
| virtual void VRS::SceneSwitch::clear | ( | ) | [virtual] |
These methods manage the internal list of scene subgraphs.
Assigns or returns the canvas for a specific child node.
| virtual int VRS::SceneSwitch::childNodes | ( | ) | const [virtual] |
| virtual SceneNode* VRS::SceneSwitch::childNode | ( | int | i | ) | const [virtual] |
Access to all child nodes of the switch node.
| virtual void VRS::SceneSwitch::evaluate | ( | Engine * | engine | ) | [virtual] |
The evaluation request is delegated to all child nodes whose canvas equals the canvas of the current rendering engine.
Reimplemented from VRS::SceneNode.
| virtual SceneNodeVisitor::TraversalFlag VRS::SceneSwitch::traverse | ( | SceneNodeVisitor * | visitor | ) | [virtual] |
The traversal is delegated to all child nodes regardless of the canvas mask.
Reimplemented from VRS::SceneNode.
The bounding box of a canvas switch node is the combined bounding box of the bounding boxes of all children.
Reimplemented from VRS::SceneNode.
| virtual void VRS::SceneSwitch::install | ( | Engine * | engine | ) | [virtual] |
Reimplemented from VRS::SceneNode.
| virtual void VRS::SceneSwitch::deinstall | ( | Engine * | engine | ) | [virtual] |
Installation and deinstallation are not sensitive to the canvas assignments, i.e., all geometry subgraphs are installed resp. deinstalled.
Reimplemented from VRS::SceneNode.
| VRS::SceneSwitch::VRS_TYPEINFO | ( | SceneSwitch | , | |
| SceneNode | ||||
| ) |
| VRS::SceneSwitch::VRS_SERIALIZABLE | ( | SceneSwitch | ) |
| virtual void VRS::SceneSwitch::acceptChildren | ( | std::vector< Visitable * > & | appendChildrenHere | ) | const [protected, virtual] |
Reimplemented from VRS::Visitable.