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

RmStreamMap Class Reference

StreamMap. More...

#include <RmEffect.h>

Inheritance diagram for RmStreamMap:

RmNode List of all members.

Public Member Functions

 RmStreamMap ()
 Default Constructor.

 RmStreamMap (const RM_TCHAR *strName, bool bInitialize=true)
 Constructor.

virtual ~RmStreamMap ()
 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 ()
virtual bool IsNodeValid ()
 Is valid.

bool AddStream (RmStream *pStream)
 Add stream.

RmStreamGetStream (const RM_TCHAR *strStreamName)
 Get stream.

RmStreamGetStream (int nIndex)
 Get stream.

void DeleteStream (RmStream *pStream)
 Delete stream.

void DeleteStream (const RM_TCHAR *strStreamName)
 Delete stream.

int GetNumStreams ()
 Get number fo streams.

RmStreamListIterator BeginStreams ()
 Begin Iterator.

RmStreamListConstIterator BeginStreams () const
 Begin Iterator.

RmStreamListIterator EndStreams ()
 End Iterator.

RmStreamListConstIterator EndStreams () const
 End Iterator.

int GetHandle ()
 Run-time stream resource handle.

void SetHandle (int nHandle)
 Set the handle to the run-time stream definition resource.


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

int m_nHandle
 A handle to the run-time vertex declaration resource.

RmStreamList m_streamList
 List of streams that live in this stream map.


Detailed Description

StreamMap.

Stream Map node: contains one or more individual streams


Constructor & Destructor Documentation

RmStreamMap::RmStreamMap  ) 
 

Default Constructor.

Default constructor: creates a stream map with no streams

RmStreamMap::RmStreamMap const RM_TCHAR *  strName,
bool  bInitialize = true
 

Constructor.

Creates a stream map node with specified name. If bInitialize = true (default) then the stream map is initialized to have one stream with a single channel (position)

Parameters:
strName Name of node
bInitialize Flag to initialize

virtual RmStreamMap::~RmStreamMap  )  [virtual]
 

Destructor.

Destructor


Member Function Documentation

bool RmStreamMap::AddStream RmStream pStream  ) 
 

Add stream.

Add new stream to the stream map. Note that if the stream map already contains a stream with the same name as the input stream, the old instance will be deleted first.

Parameters:
pStream Stream to add
See also:
RmStream
Returns:
True on success

RmStreamListConstIterator RmStreamMap::BeginStreams  )  const [inline]
 

Begin Iterator.

Begin Iterator

Returns:
Begin iterator

RmStreamListIterator RmStreamMap::BeginStreams  )  [inline]
 

Begin Iterator.

Begin Iterator

Returns:
Begin iterator

virtual RmNode* RmStreamMap::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 RmStreamMap::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 RmStreamMap::DeleteStream const RM_TCHAR *  strStreamName  ) 
 

Delete stream.

Delete stream given its name

Parameters:
strStreamName Name of stream to delete
Returns:
None

void RmStreamMap::DeleteStream RmStream pStream  ) 
 

Delete stream.

Delete specified stream from this stream map

Parameters:
pStream Stream to delete
See also:
RmStream
Returns:
None

RmStreamListConstIterator RmStreamMap::EndStreams  )  const [inline]
 

End Iterator.

End Iterator

Returns:
End iterator

RmStreamListIterator RmStreamMap::EndStreams  )  [inline]
 

End Iterator.

End Iterator

Returns:
End iterator

virtual const RM_TCHAR* RmStreamMap::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.

int RmStreamMap::GetHandle  )  [inline]
 

Run-time stream resource handle.

Retrieve the handle to the run-time stream definition resource. Do not use outside of a renderer - not guaranteed to be valid.

Returns:
The handle to the run-time stream definition resource

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

int RmStreamMap::GetNumStreams  )  [inline]
 

Get number fo streams.

Retrieve the number of streams in the stream map

Returns:
Number of streams

RmStream* RmStreamMap::GetStream int  nIndex  ) 
 

Get stream.

Retrieve stream specified by nIndex

Parameters:
nIndex Index to streams
Returns:
Stream
See also:
RmStream

RmStream* RmStreamMap::GetStream const RM_TCHAR *  strStreamName  ) 
 

Get stream.

Retrieve stream specified by its name

Parameters:
strStreamName Name of stream to retrieve
Returns:
Stream
See also:
RmStream

virtual bool RmStreamMap::IsNodeValid  )  [inline, virtual]
 

Is valid.

Node valid property

Returns:
return true if Node is valid

Reimplemented from RmNode.

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

void RmStreamMap::SetHandle int  nHandle  )  [inline]
 

Set the handle to the run-time stream definition resource.

Set the handle to the run-time stream definition resource. Do not use outside of a renderer - not guaranteed to be valid.

Parameters:
nHandle Handle to the run-time stream definition resource
Returns:
None

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