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

RmRenderStateBlock Class Reference

RenderState Object. More...

#include <RmEffect.h>

Inheritance diagram for RmRenderStateBlock:

RmNode List of all members.

Public Member Functions

 RmRenderStateBlock ()
 Default Constructor.

virtual ~RmRenderStateBlock ()
 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 ()
RmStateFindRenderState (unsigned long state)
 Find render state.

bool AddRenderState (RmState *pState)
 Add render state.

void DeleteRenderState (unsigned long state)
 Delete render state.

RmStateListIterator BeginRenderStates ()
 Begin Iterator.

RmStateListConstIterator BeginRenderStates () const
 Begin Iterator.

RmStateListIterator EndRenderStates ()
 End Iterator.

RmStateListConstIterator EndRenderStates () const
 End Iterator.


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

RmStateList m_stateList
 List of render states within this block.


Detailed Description

RenderState Object.

RmRenderStateBlock contains any number of RmRenderState structures .............///


Constructor & Destructor Documentation

RmRenderStateBlock::RmRenderStateBlock  ) 
 

Default Constructor.

Default constructor

virtual RmRenderStateBlock::~RmRenderStateBlock  )  [virtual]
 

Destructor.

Deallocates memory for this node


Member Function Documentation

bool RmRenderStateBlock::AddRenderState RmState pState  ) 
 

Add render state.

Adds new render state instance to the render state block

Parameters:
pState State to add
See also:
RmState
Returns:
True on success

RmStateListConstIterator RmRenderStateBlock::BeginRenderStates  )  const [inline]
 

Begin Iterator.

Begin iterator

Returns:
Begin Iterator

RmStateListIterator RmRenderStateBlock::BeginRenderStates  )  [inline]
 

Begin Iterator.

Begin iterator

Returns:
Begin Iterator

virtual RmNode* RmRenderStateBlock::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 RmRenderStateBlock::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 RmNode.

void RmRenderStateBlock::DeleteRenderState unsigned long  state  ) 
 

Delete render state.

Deletes render state instance specified by its type

Parameters:
state State to delete
Returns:
None

RmStateListConstIterator RmRenderStateBlock::EndRenderStates  )  const [inline]
 

End Iterator.

End iterator

Returns:
End Iterator

RmStateListIterator RmRenderStateBlock::EndRenderStates  )  [inline]
 

End Iterator.

End iterator

Returns:
End Iterator

RmState* RmRenderStateBlock::FindRenderState unsigned long  state  ) 
 

Find render state.

Finds specific render state within the render state block by specifed state type ID /// Returns NULL if no match is found. ///

Parameters:
state State to find
Returns:
State found
See also:
RmState

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

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

Returns:
Returns description string

Reimplemented from RmNode.

virtual RmNodeTypeChildRuleList* RmRenderStateBlock::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 RmNode.

virtual bool RmRenderStateBlock::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 RmNode.

virtual bool RmRenderStateBlock::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 RmNode.

virtual void RmRenderStateBlock::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 RmNode.

virtual void RmRenderStateBlock::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:19 2005 for RenderMonkey SDK by doxygen 1.3.6