eng::LodNode Class Reference

LodNode acts a switch for the traversal of a Graph. More...

#include <eng_node.hh>

Inheritance diagram for eng::LodNode:

eng::Node

List of all members.

Public Types

typedef
SharedPtrNull
< LodNode
Ptr

Public Member Functions

 LodNode (const Value &value)
 LodNode (const LodNode &src)
void Accept (Visitor &visitor)
const LodNode::ValueGetValue (void) const
void SetLod (const ObjectLod objectLod)
void AttachChild (Node::Ptr child)
void AttachChild (Node::Ptr child, const ObjectLod objectLod)
void DetachChild (Node::Ptr child)

Protected Member Functions

Node::Ptr Clone (void) const
TypeId GetTypeId (void) const

Private Attributes

Value mValue

Friends

class Value
class NodeClones
class Graph
class GraphMaker
class GraphImporter

Classes

class  Value
 Value of LodNode. More...


Detailed Description

LodNode acts a switch for the traversal of a Graph.

LodNode appears to have only one child (in Node::mChildren), but LodNode::Value::mChildNodes can have multiple child nodes that switch.


Member Typedef Documentation

typedef SharedPtrNull<LodNode> eng::LodNode::Ptr

Reimplemented from eng::Node.


Constructor & Destructor Documentation

eng::LodNode::LodNode ( const Value value  ) 

LodNode methods.

eng::LodNode::LodNode ( const LodNode src  ) 


Member Function Documentation

void eng::LodNode::Accept ( Visitor visitor  )  [inline, virtual]

Implements eng::Node.

const LodNode::Value& eng::LodNode::GetValue ( void   )  const [inline, virtual]

Implements eng::Node.

Node::Ptr eng::LodNode::Clone ( void   )  const [protected, virtual]

Implements eng::Node.

Node::TypeId eng::LodNode::GetTypeId ( void   )  const [protected, virtual]

Implements eng::Node.

void eng::LodNode::SetLod ( const ObjectLod  objectLod  ) 

The LOD of a Graph is changed by switching to those children which are in range of the current LOD. The selected child(s) will appear in the architectural Node::mChildren which a Visitor may traverse to, while those outside LOD remain hidden in Node::Value::mAllChildren.

void eng::LodNode::AttachChild ( Node::Ptr  child  )  [virtual]

Variant of AttachChild() that defaults child to any LOD.

Reimplemented from eng::Node.

void eng::LodNode::AttachChild ( Node::Ptr  child,
const ObjectLod  objectLod 
)

Add a sub-graph to a LodNode. The sub-graph (child) corresponds to an ObjectLod.

void eng::LodNode::DetachChild ( Node::Ptr  child  )  [virtual]

Detach a sub-graph from a LodNode.

Reimplemented from eng::Node.


Friends And Related Function Documentation

friend class Value [friend]

Reimplemented from eng::Node.

friend class NodeClones [friend]

Reimplemented from eng::Node.

friend class Graph [friend]

Reimplemented from eng::Node.

friend class GraphMaker [friend]

Reimplemented from eng::Node.

friend class GraphImporter [friend]

Reimplemented from eng::Node.


Member Data Documentation

Value eng::LodNode::mValue [private]


The documentation for this class was generated from the following files: Palomino 3D Engine documents generated by doxygen 1.5.3 on Fri Nov 23 11:26:22 2007