scg3
0.6
|
Base class for all composite nodes, i.e., nodes with children (composite pattern, abstract). More...
#include "Composite.h"
Public Member Functions | |
Composite () | |
virtual | ~Composite ()=0 |
virtual void | destroy () |
Composite * | addChild (NodeSP child) |
Composite * | removeChild (Node *node, bool &result) |
Composite * | removeChild (Node *node) |
virtual void | traverse (Traverser *traverser) |
virtual void | acceptPost (Traverser *traverser) |
virtual void | renderPost (RenderState *renderState) |
Public Member Functions inherited from scg::Node | |
Node () | |
virtual | ~Node ()=0 |
virtual void | clear () |
int | getNCores () const |
const std::string & | getMetaInfo (const std::string &key) const |
void | setMetaInfo (const std::string &key, const std::string &value) |
bool | isVisible () const |
void | setVisible (bool isVisible=true) |
virtual void | accept (Traverser *traverser) |
virtual void | render (RenderState *renderState) |
Protected Attributes | |
NodeSP | leftChild_ |
Protected Attributes inherited from scg::Node | |
NodeSP | rightSibling_ |
Composite * | parent_ |
std::vector< CoreSP > | cores_ |
bool | isVisible_ |
std::unordered_map< std::string, std::string > | metaInfo_ |
Additional Inherited Members | |
Protected Member Functions inherited from scg::Node | |
void | addSibling_ (NodeSP sibling) |
void | removeSibling_ (Node *node, bool &result) |
void | processCores_ (RenderState *renderState) |
void | postProcessCores_ (RenderState *renderState) |
Base class for all composite nodes, i.e., nodes with children (composite pattern, abstract).
Definition at line 37 of file Composite.h.
scg::Composite::Composite | ( | ) |
Constructor.
|
pure virtual |
Destructor.
|
virtual |
Accept traverser after traversing sub-tree (visitor pattern).
Reimplemented in scg::Camera, scg::Light, scg::Transformation, and scg::Group.
Add child to composite node.
|
virtual |
Remove node from scene graph, destroy nodes of sub-tree (if any).
Reimplemented from scg::Node.
Remove child from composite node.
node | pointer to node to be removed |
result | true if node has been found and removed |
Remove child from composite node (ignore result).
|
virtual |
Render node after traversing sub-tree, e.g., to restore previous state.
Reimplemented in scg::Camera, scg::Light, scg::Transformation, and scg::Group.
|
virtual |
Traverse node tree (depth-first, pre-order) with given traverser.
Implements scg::Node.
|
protected |
Definition at line 93 of file Composite.h.