CSLXSISubComponentList Class Reference

Sub-component list base class for dotXSI 5.0+. More...

#include <XSISubComponentList.h>

Inheritance diagram for CSLXSISubComponentList:

CSLTemplate CSIBCNode CSLXSIPolygonList CSLXSITriangleList CSLXSITriangleStripList CSLXSIVertexList CSLCOLLADATriangleList CSLCOLLADAVertexList List of all members.

Public Types

typedef CSLArrayProxy< SI_Int,
SI_Int, 1 > 
CSLIntArray
typedef CSLArrayProxy< SI_Char *,
SI_Char *, 1 > 
CSLStringArray

Public Member Functions

  CSLXSISubComponentList (CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate)
virtual  ~CSLXSISubComponentList ()
SI_Int  GetCount ()
virtual SI_Error  SetCount (SI_Int)
SI_Int  GetAttributeCount ()
SI_Int  AddAttribute (SI_Char *)
SI_Error  RemoveAttribute ()
SI_Error  ClearAttribute ()
CSLIntArray GetAttributeIndices (SI_Int in_iIndex)
CSIBCArray< CSLIntArray * > *  GetAttributeIndicesArray ()
CSLStringArray GetAttributeNameArray ()
CSLArrayProxy< SI_Int, SI_Int, 1 > *  GetAttributeByName (SI_Char *in_pName)
CSIBCString GetSemantic (int in_iIndx)
SI_Void  SetSemantic (int in_iIndx, CSIBCString in_szSemantic)
CSIBCString GetSource (int in_iIndx)
SI_Void  SetSource (int in_iIndx, CSIBCString in_szSource)

Detailed Description

Sub-component list base class for dotXSI 5.0+.

Describes a sub-component list base class

The CSLXSISubComponentList base class holds a list of attribute reference. Each attributes list are reference by name and a corresponding indices array matche the sub component node with the attribute value.

This class allows an element composed of sub-component (vertex list, polygon list, etc.) to reference to attrubutes (position, normal, colors, etc.) for its nodes, by name. A corresponding indices array is associated to each attribute reference to match the sub component node with the attribute value.


Member Typedef Documentation

typedef CSLArrayProxy<SI_Int, SI_Int, 1> CSLIntArray

Proxy class that allows modifying a list of SI_Int like an array.

Reimplemented in CSLXSIPolygonList, and CSLXSITriangleStripList.

typedef CSLArrayProxy<SI_Char*, SI_Char*, 1> CSLStringArray

Proxy class that allows modifying a list of SI_Char* like an array.


Constructor & Destructor Documentation

CSLXSISubComponentList ( CSLScene in_pScene,
CSLModel in_pModel,
CdotXSITemplate in_pTemplate  
)

Constructor

Parameters:
in_pScene  Parent scene
in_pModel  Parent model
in_pTemplate  Refered template
Returns:
an instance of CSLXSISubComponentList

virtual ~CSLXSISubComponentList (  )  [virtual]

Destructor


Member Function Documentation

SI_Int GetCount (  ) 

Get the number of node (polynode/vertex/etc.) in this sub component list.

Returns:
SI_Int Number of sub component node.

virtual SI_Error SetCount ( SI_Int   )  [virtual]

Set the number of node (polynode/vertex/etc.) in this sub component list.

Returns:
SI_Error Error code.

Reimplemented in CSLXSIPolygonList, CSLXSITriangleList, and CSLXSITriangleStripList.

SI_Int GetAttributeCount (  ) 

Get the number of attribute accessor.

Returns:
SI_Int Number of attribute.

SI_Int AddAttribute ( SI_Char *   ) 

Create a new attribute accessor element.

Returns:
SI_Int The index of the newly created attribute elements.

SI_Error RemoveAttribute (  ) 

Remove the last attribute accessor.

Returns:
SI_Error Error code.

SI_Error ClearAttribute (  ) 

Remove all the attribute accessors.

Returns:
SI_Error Error code.

CSLIntArray* GetAttributeIndices ( SI_Int  in_iIndex  ) 

Get the attribute indices.

Returns:
CSLIntArray* Attribute indices.

CSIBCArray<CSLIntArray*>* GetAttributeIndicesArray (  ) 

Get the attribute indices array.

Returns:
CSIBCArray<CSLIntArray>* Attribute indices array.

CSLStringArray* GetAttributeNameArray (  ) 

Get the attribute name array.

Returns:
CSIBCArray<CSLCharArray>* Attribute name array.

CSLArrayProxy<SI_Int, SI_Int, 1>* GetAttributeByName ( SI_Char *  in_pName  ) 

Get the index of the first attribute with the specified name from the array.

Returns:
CSLArrayProxy<SI_Int, SI_Int, 1>* The attribute indices array of the attibute with the specified name.

CSIBCString& GetSemantic ( int  in_iIndx  ) 

Gets the associated semantic

Returns:
CSIBCString The semantic

SI_Void SetSemantic ( int  in_iIndx,
CSIBCString  in_szSemantic  
)

Sets the associated semantic

CSIBCString& GetSource ( int  in_iIndx  ) 

Gets the associated Source

Returns:
CSIBCString The Source

SI_Void SetSource ( int  in_iIndx,
CSIBCString  in_szSource  
)

Sets the associated Source


The documentation for this class was generated from the following file: