Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

RmMatrixVariable Class Reference

Matrix Variable Node. More...

#include <RmEffect.h>

Inheritance diagram for RmMatrixVariable:

RmVariable RmNode List of all members.

Public Member Functions

 RmMatrixVariable ()
 Default constructor.

 RmMatrixVariable (float fMatrix[16])
 Default constructor.

virtual ~RmMatrixVariable ()
 Destructor.

virtual void Update (RmNodeUpdateType nodeUpdateType, RmNode *pRmUpdateRootNode)
 Update.

virtual bool LoadXMLData (int hDoc, const RM_TCHAR *strXPath, const RM_TCHAR *strRmXMLVersion)
 Load node data from XML.

virtual bool SaveXMLData (int hDoc, const RM_TCHAR *strXPath)
 Save node data to XML.

virtual RmNodeClone (bool bIncludeLoadedData)
 Clone this node.

virtual const RM_TCHAR * GetDescription ()
float * GetData ()
 Get data.

float GetValue (int nIndex)
 Get value.

float GetValue (int nRowIndex, int nColumnIndex)
 Get value.

void SetValue (int nIndex, float fValue)
 Set value.

void SetValue (int nRowIndex, int nColumnIndex, float fValue)
 Set value.

void SetValues (float fMatrix[16])
 Set values.

int GetNumElements ()
 Get number of elements.


Protected Member Functions

virtual void CopyNodeData (RmNode *pDestinationNode, bool bIncludeLoadedData)
 Copy node data.

virtual RmNodeTypeChildRuleListGetNodeTypeChildRuleList ()
 Parent / Child rule list function.

virtual void SetNodeTypeChildRuleList (RmNodeTypeChildRuleList *pRmNodeChildRuleList)
 Sets the node child rule list for the given node.


Protected Attributes

float m_fValues [16]
 The actual values stored in this matrix:.


Detailed Description

Matrix Variable Node.

RmMatrix is a MATRIX of 4x4 float values


Constructor & Destructor Documentation

RmMatrixVariable::RmMatrixVariable  ) 
 

Default constructor.

Default constructor - creates an identity matrix variable

RmMatrixVariable::RmMatrixVariable float  fMatrix[16]  ) 
 

Default constructor.

Default constructor - Creates a new matrix with 16 initialized components

virtual RmMatrixVariable::~RmMatrixVariable  )  [inline, virtual]
 

Destructor.

Destructor


Member Function Documentation

virtual RmNode* RmMatrixVariable::Clone bool  bIncludeLoadedData  )  [virtual]
 

Clone this node.

Creates a clone of this node

Returns:
Cloned node. Returns NULL if cloning failed.

Reimplemented from RmNode.

virtual void RmMatrixVariable::CopyNodeData RmNode pDestinationNode,
bool  bIncludeLoadedData
[protected, virtual]
 

Copy node data.

Copies this node's contents (not including children) into the destination node. See RmNode::CopyNodeData for details

Parameters:
pDestinationNode the destination node
Returns:
None

Reimplemented from RmVariable.

float* RmMatrixVariable::GetData  )  [inline]
 

Get data.

Returns a pointer to the data values stored in the matrix

Returns:
Pointer to data

virtual const RM_TCHAR* RmMatrixVariable::GetDescription  )  [virtual]
 

Returns description of the node: used for displaying a tooltip in the workspace tree view for the given node. Returns description of the matrix node: 4 rows of values

Returns:
Returns description string

Reimplemented from RmNode.

virtual RmNodeTypeChildRuleList* RmMatrixVariable::GetNodeTypeChildRuleList  )  [inline, protected, virtual]
 

Parent / Child rule list function.

Retrieves the rule list for adding child nodes for a given node type

Returns:
Returns node type child list rules

Reimplemented from RmVariable.

int RmMatrixVariable::GetNumElements  )  [inline]
 

Get number of elements.

Returns the number of elements in this matrix node

Returns:
Number of elements

float RmMatrixVariable::GetValue int  nRowIndex,
int  nColumnIndex
 

Get value.

Retrieve a value from the matrix by its row and column indices

Parameters:
nRowIndex Row index
nColumnIndex Column index
Returns:
Value at given index

float RmMatrixVariable::GetValue int  nIndex  ) 
 

Get value.

Retrieve a value by its single nIndex

Parameters:
nIndex Index to array
Returns:
Value at index

virtual bool RmMatrixVariable::LoadXMLData int  hDoc,
const RM_TCHAR *  strXPath,
const RM_TCHAR *  strRmXMLVersion
[virtual]
 

Load node data from XML.

Loads versioned XML node data. Note that this method will only load the contents of each node, not the data for all of the children nodes. Each child will have its own XML loading function called by the API.

Parameters:
hDoc Handle to the XML document
strXPath Node path in XML
strRmXMLVersion XML version
Returns:
True if load succeeded. False otherwise.

Reimplemented from RmVariable.

virtual bool RmMatrixVariable::SaveXMLData int  hDoc,
const RM_TCHAR *  strXPath
[virtual]
 

Save node data to XML.

Saves node's contents to XML. Note that this method will only save the contents of each node, not the data for all of the children nodes. Each child will have its own XML saving function called by the API.

Parameters:
hDoc Handle to the XML document
strXPath Node path in XML
Returns:
True if save succeeded. False otherwise.

Reimplemented from RmVariable.

virtual void RmMatrixVariable::SetNodeTypeChildRuleList RmNodeTypeChildRuleList pRmNodeChildRuleList  )  [inline, protected, virtual]
 

Sets the node child rule list for the given node.

Sets the child addition rule list for the given node.

Parameters:
pRmNodeChildRuleList new node rules list
None 

Reimplemented from RmVariable.

void RmMatrixVariable::SetValue int  nRowIndex,
int  nColumnIndex,
float  fValue
 

Set value.

Set a specific value in the matrix node given a row and column indices

Parameters:
nRowIndex Row index
nColumnIndex Column index
fValue Value to set
Returns:
None

void RmMatrixVariable::SetValue int  nIndex,
float  fValue
 

Set value.

Set a specific value in the matrix node

Parameters:
nIndex Index
fValue Value to set
Returns:
None

void RmMatrixVariable::SetValues float  fMatrix[16]  ) 
 

Set values.

Set all 16 values for the 4x4 matrix

Parameters:
fMatrix Array of 16 floats
Returns:
None

virtual void RmMatrixVariable::Update RmNodeUpdateType  nodeUpdateType,
RmNode pRmUpdateRootNode
[virtual]
 

Update.

Updates the internal values of the node

Parameters:
nodeUpdateType Update type
See also:
RmNodeUpdateType
Parameters:
pRmUpdateRootNode Root node for update
Returns:
None

Reimplemented from RmNode.


The documentation for this class was generated from the following file:
Generated on Fri Feb 25 16:09:09 2005 for RenderMonkey SDK by doxygen 1.3.6