CSLXSITriangleStripList Class Reference

#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

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_pScene  Parent scene
in_pModel  Parent model
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 (XSI_TRIANGLE_STRIP_LIST)

Returns:
CSLTemplate::ETemplateType The type of this template (XSI_TRIANGLE_STRIP_LIST)

Implements CSLTemplate.

CSLBaseMaterial* GetMaterial (  )  [inline]

Return the material object of the triangle strip list.

Returns:
CSLBaseMaterial* Material object.

CSIBCString GetMaterialName (  ) 

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

Returns:
CSIBCString Material object name.

SI_Void SetMaterial ( CSLBaseMaterial in_pNewMaterial  ) 

Change the material object of the triangle strip list.

Parameters:
CSLBaseMaterial*  New material object.
Returns:
None

SI_Void SetMaterialName ( const CSIBCString in_szNewMaterialName  ) 

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

Parameters:
const  CSIBCString& New material object name.
Returns:
None

SI_Int GetTriangleStripCount (  ) 

Get the number of triangle strip.

Returns:
SI_Int Number of triangle strip.

CSLXSITriangleStripList::CSLIntArray* GetTriangleStripNodeCountArray (  ) 

Get the triangle strip node count array.

Returns:
CSLIntArray Array of triangle strip node count.

CSLIntArray* GetVertexIndices (  ) 

Get the polynode vertex indices array.

Returns:
CSLIntArray Array of polynode vertex indices.

virtual SI_Error SetCount ( SI_Int   )  [virtual]

Set the number of polynode in this triangle strip list.

Returns:
SI_Error Error code.

Reimplemented from CSLXSISubComponentList.

SI_Error Synchronize (  )  [virtual]

Commit the current template information

Returns:
SI_Error Whether or not the commit was successful

Reimplemented from CSLTemplate.


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