Defines a node in the program tree. More...
#include <Grammar.h>
Public Member Functions | |
| void | newGeneration (CNode *child, String module) |
| Starts a new execution subtree generation from this child, applying the specified grammar module. | |
| void | defer (CNode *child, String module) |
| Defers a new execution subtree generation from this child, applying the specified grammar module. | |
Public Attributes | |
| int | type |
| Node type (see ActionType) | |
| CNode * | parent |
| Pointer to parent node. | |
| TVector< CNode * > | children |
| List of children nodes. | |
| TVector< std::pair< CNode *, String > > | recursePending |
| List of child nodes that still require processing. | |
| TVector< std::pair< CNode *, String > > | deferred |
| List of child nodes that requested deferred processing. | |
| TMap< String, String > | variables |
| Variables defined for the node and children. | |
| TVector< CAction > | actions |
| List of actions to be performed by the node. | |
| CScope | scope |
| Scope for the node. | |
| CBoxVolume | box |
| Box primitive for the node. | |
| CNGonVolume | ngon |
| Ngon primitive for the node. | |
| CBoxLoftVolume | boxLoft |
| Box loft primitive for the node. | |
| CNGonLoftVolume | ngonLoft |
| Ngon loft primitive for the node. | |
| int | generation |
| Counts the tree generation for the node. | |
| String | module |
| Stores the ID of the grammar module that originated the node. | |
| String | material |
| Stores the material ID set for the node. | |
| bool | occludes |
| Indicate whether this module may occlude other modules. | |
| TMap< String, String > | localNames |
| Contain a list of aliases for occlusion and snap identifiers so they can be local to a portion of the execution tree. | |
| bool | hasLocalNames |
| Indicates whether the node has local aliases. | |
| Algebra::Matrix | cachedMatrix |
| To speed up processing, the transformation matrix can be cached at some point. | |
| bool | matrixCacheValid |
| Indicates whether the cache transformation maxtrix is still valid. | |