CSLXSITriangleStripList Class Reference

This class represents an XSI_TriangleStripList template. More...

#include <XSITriangleStripList.h>

Inheritance diagram for CSLXSITriangleStripList:

CSLXSISubComponentList CSLTemplate CSIBCNode List of all members.

Public Types

typedef CSLArrayProxy< SI_Int,
SI_Int, 1 > 
CSLIntArray

Public Member Functions

  CSLXSITriangleStripList (CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate)
virtual  ~CSLXSITriangleStripList ()
virtual ETemplateType  Type ()
CSLBaseMaterial GetMaterial ()
CSIBCString  GetMaterialName ()
SI_Void  SetMaterial (CSLBaseMaterial *in_pNewMaterial)
SI_Void  SetMaterialName (const CSIBCString &in_szNewMaterialName)
SI_Int  GetTriangleStripCount ()
CSLXSITriangleStripList::CSLIntArray GetTriangleStripNodeCountArray ()
CSLIntArray GetVertexIndices ()
virtual SI_Error  SetCount (SI_Int)
SI_Error  Synchronize ()

Detailed Description

This class represents an XSI_TriangleStripList template.

Describes a list of triangle strips that are made up of N number of vertices for dotXSI 5.0+ (see the XSI_TriangleStripList template reference). The polynodes in this list can have N number of attibutes like vertex, normals, UV and color information.

Tip:
You can use GetVertexIndices() to get the mandatory vertex index attributes and the parent class (CSLXSISubComponentList) functionality to get the other generic attributes index.

You can use GetTriangleStripCount() to get the number of triangle strips in the list.

To find out how many vertices a particular triangle strip uses, get the list of triangle strip vertex count using GetTriangleStripNodeCountArray().


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 from CSLXSISubComponentList.


Constructor & Destructor Documentation

CSLXSITriangleStripList ( CSLScene in_pScene,
CSLModel in_pModel,
CdotXSITemplate in_pTemplate  
)

Constructor

Parameters:
[in]  in_pScene  Parent scene
[in]  in_pModel  Parent model
[in]  in_pTemplate  Refered template
Returns:
an instance of CSLXSITriangleStripList

virtual ~CSLXSITriangleStripList (  )  [virtual]

Destructor


Member Function Documentation

virtual ETemplateType Type (  )  [inline, virtual]

Returns the type of this template

Return values:
CSLTemplate::XSI_TRIANGLE_STRIP_LIST  The type of this template

Implements CSLTemplate.

CSLBaseMaterial* GetMaterial (  )  [inline]

Returns the material object of the triangle strip list.

Returns:
Material object.

CSIBCString GetMaterialName (  ) 

Returns the material object name of the triangle strip list or an empty string if there's none.

Returns:
Material object name.

SI_Void SetMaterial ( CSLBaseMaterial in_pNewMaterial  ) 

Changes the material object of the triangle strip list.

Parameters:
[in]  in_pNewMaterial  New material object.

SI_Void SetMaterialName ( const CSIBCString in_szNewMaterialName  ) 

Changes the material object name of the triangle strip list. Should ONLY be called if we don't export the material.

Parameters:
[in]  in_szNewMaterialName  New material object name.

SI_Int GetTriangleStripCount (  ) 

Returns the number of triangle strip.

Returns:
Number of triangle strip.

CSLXSITriangleStripList::CSLIntArray* GetTriangleStripNodeCountArray (  ) 

Returns the triangle strip node count array.

Returns:
Array of triangle strip node count.

CSLIntArray* GetVertexIndices (  ) 

Returns the polynode vertex indices array.

Returns:
Array of polynode vertex indices.

virtual SI_Error SetCount ( SI_Int   )  [virtual]

Sets the number of polynode in this triangle strip list.

Returns:
Error code.

Reimplemented from CSLXSISubComponentList.

SI_Error Synchronize (  )  [virtual]

Commits the current template information

Returns:
Whether or not the commit was successful

Reimplemented from CSLTemplate.


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