GLFX::Scene::Node Class Reference

#include <glfxscene.h>

Inheritance diagram for GLFX::Scene::Node:

GLFX::Scene::CameraNode GLFX::Scene::LightNode GLFX::Scene::MeshNode List of all members.

Public Types

enum  {
  TYPE_NODE = 0, TYPE_STATIC_MESH, TYPE_CAMERA, TYPE_LIGHT,
  TYPE_USER_NODE = 1024
}

Public Member Functions

 Node (const Node &node)
virtual Node * Clone ()
virtual int GetType ()
virtual void UpdateTM (bool clearDirty)
unsigned long GetChildCount () const
Node * GetChild (unsigned long num) const
void RemoveChild (unsigned long num)
Node * DetachChild (unsigned long num)
unsigned long AddChild (Node *node)
const char * GetName () const
void SetName (const char *name)
Matrix4 & GetTM ()
const Matrix4 & GetTM () const
void SetTM (const Matrix4 &tm)
void ResetLocalTM ()
const Matrix4 & GetWorldTM () const
bool IsDirty () const
void SetDirty ()
bool IsDisabled () const
void SetDisabled (bool disabled)
Node * GetParent ()

Protected Member Functions

void SetParent (Node *node)

Member Enumeration Documentation

anonymous enum

Enumerator:
TYPE_NODE  Simple node.
TYPE_STATIC_MESH  Node with static mesh.
TYPE_CAMERA  Node with camera.
TYPE_LIGHT  Node with light.
TYPE_USER_NODE  User defined nodes start here.


Constructor & Destructor Documentation

GLFX::Scene::Node::Node ( const Node &  node  )  [inline]

Construct node from other one.


Member Function Documentation

virtual Node* GLFX::Scene::Node::Clone (  )  [inline, virtual]

Clone this node.

Reimplemented in GLFX::Scene::MeshNode, GLFX::Scene::CameraNode, and GLFX::Scene::LightNode.

virtual int GLFX::Scene::Node::GetType (  )  [inline, virtual]

Get node type.

Reimplemented in GLFX::Scene::MeshNode, GLFX::Scene::CameraNode, and GLFX::Scene::LightNode.

virtual void GLFX::Scene::Node::UpdateTM ( bool  clearDirty  )  [inline, virtual]

Update world TM and bounding sphere of this node.

Parameters:
clearDirty clear dirty flag

unsigned long GLFX::Scene::Node::GetChildCount (  )  const [inline]

Gets number of children.

Node* GLFX::Scene::Node::GetChild ( unsigned long  num  )  const [inline]

Gets node.

Parameters:
num node number
Returns:
node

void GLFX::Scene::Node::RemoveChild ( unsigned long  num  )  [inline]

Removes a node.

Parameters:
num node number

Node* GLFX::Scene::Node::DetachChild ( unsigned long  num  )  [inline]

Detaches a child from this node.

Parameters:
num node number
Returns:
detached node

unsigned long GLFX::Scene::Node::AddChild ( Node *  node  )  [inline]

Adds a child node.

Parameters:
node new child node
Returns:
child number for this node

const char* GLFX::Scene::Node::GetName (  )  const [inline]

Gets node name.

void GLFX::Scene::Node::SetName ( const char *  name  )  [inline]

Sets node name.

Matrix4& GLFX::Scene::Node::GetTM (  )  [inline]

Gets local transform.

const Matrix4& GLFX::Scene::Node::GetTM (  )  const [inline]

Gets local transform.

void GLFX::Scene::Node::SetTM ( const Matrix4 &  tm  )  [inline]

Sets local transform.

void GLFX::Scene::Node::ResetLocalTM (  )  [inline]

Resets local transform setting it to identity matrix.

const Matrix4& GLFX::Scene::Node::GetWorldTM (  )  const [inline]

Gets world transform.

bool GLFX::Scene::Node::IsDirty (  )  const [inline]

Check if node is dirty i.e. it's world matrix is out-of-date.

void GLFX::Scene::Node::SetDirty (  )  [inline]

Sets dirty flag. See IsDirty for details.

bool GLFX::Scene::Node::IsDisabled (  )  const [inline]

Checks if node is disabled.

void GLFX::Scene::Node::SetDisabled ( bool  disabled  )  [inline]

Enables or disables a node.

Node* GLFX::Scene::Node::GetParent (  )  [inline]

Gets node parent.

void GLFX::Scene::Node::SetParent ( Node *  node  )  [inline, protected]

Sets node parent.


The documentation for this class was generated from the following file:
SourceForge.net Logo