CSLXSIShape Class Reference

XSI Mesh shape class for dotXSI 5.0+. More...

#include <XSIShape.h>

Inheritance diagram for CSLXSIShape:

CSLTemplate CSIBCNode List of all members.

Public Types

enum   EXSIShapeType {
  XSI_ORDERED,
  XSI_INDEXED
}

Public Member Functions

  CSLXSIShape (CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate, EXSIShapeType in_Type)
virtual  ~CSLXSIShape ()
virtual CSLXSISubComponentAttributeList AddAttributeList (CSLXSISubComponentAttributeList::EAttributeType in_AttributeType)
SI_Int  GetAttributeListCount ()
SI_Int  GetAttributeListCountBySemantic (SI_Char *in_pSemantic)
CSIBCArray< CSLXSISubComponentAttributeList * > *  AttributeLists ()
SI_Error  RemoveAttributeList ()
SI_Error  RemoveAttributeList (CSLXSISubComponentAttributeList *in_pAttributeList)
SI_Error  RemoveAttributeList (SI_Int in_iIndex)
SI_Error  ClearAttributeLists ()
SI_Error  ClearAttributeListsBySemantic (SI_Char *in_pSemantic)
CSLXSISubComponentAttributeList ConnectAttributeList (CSLXSISubComponentAttributeList *in_pNewXSISubComponentAttributeList)
CSLXSISubComponentAttributeList GetFirstAttributeListBySemantic (SI_Char *in_pSemantic)
CSLXSISubComponentAttributeList GetNextAttributeListBySemantic (SI_Char *in_pSemantic)
CSLXSISubComponentAttributeList AddVertexPositionList ()
CSLXSISubComponentAttributeList GetVertexPositionList ()
SI_Error  RemoveVertexPositionList ()
CSLXSISubComponentAttributeList AddNormalList ()
CSLXSISubComponentAttributeList GetFirstNormalList ()
CSLXSISubComponentAttributeList GetNextNormalList ()
SI_Int  GetNormalListCount ()
SI_Error  RemoveNormalList ()
SI_Error  ClearNormalLists ()
CSLXSISubComponentAttributeList AddColorList ()
CSLXSISubComponentAttributeList GetFirstColorList ()
CSLXSISubComponentAttributeList GetNextColorList ()
SI_Int  GetColorListCount ()
SI_Error  RemoveColorList ()
SI_Error  ClearColorLists ()
CSLXSISubComponentAttributeList AddTexCoordList ()
CSLXSISubComponentAttributeList GetFirstTexCoordList ()
CSLXSISubComponentAttributeList GetNextTexCoordList ()
SI_Int  GetTexCoordListCount ()
SI_Error  RemoveTexCoordList ()
SI_Error  ClearTexCoordLists ()
CSLXSISubComponentAttributeList AddWeightMapList ()
CSLXSISubComponentAttributeList GetFirstWeightMapList ()
CSLXSISubComponentAttributeList GetNextWeightMapList ()
SI_Int  GetWeightMapListCount ()
SI_Error  RemoveWeightMapList ()
SI_Error  ClearWeightMapLists ()
CSLXSISubComponentAttributeList AddTangentList ()
CSLXSISubComponentAttributeList GetFirstTangentList ()
CSLXSISubComponentAttributeList GetNextTangentList ()
SI_Int  GetTangentListCount ()
SI_Error  RemoveTangentList ()
SI_Error  ClearTangentLists ()
CSLXSISubComponentAttributeList AddBinormalList ()
CSLXSISubComponentAttributeList GetFirstBinormalList ()
CSLXSISubComponentAttributeList GetNextBinormalList ()
SI_Int  GetBinormalListCount ()
SI_Error  RemoveBinormalList ()
SI_Error  ClearBinormalLists ()
virtual ETemplateType  Type ()
EXSIShapeType  GetShapeType ()
void  SetShapeType (EXSIShapeType in_eShapeType)
virtual SI_Error  Synchronize ()

Detailed Description

XSI Mesh shape class for dotXSI 5.0+.

Describes a xsi mesh shape

The CSLXSIShape holds a generic sub component attribute list that describes vertex or ploynode attributes. It implements helper for the following attributes: vertex positions, multiple normals, multiple texture coordinates and multiple colors.


Member Enumeration Documentation

enum EXSIShapeType

Enumerator:
XSI_ORDERED  The shape is of ordered type
XSI_INDEXED  The shape is of indexed type


Constructor & Destructor Documentation

CSLXSIShape ( CSLScene in_pScene,
CSLModel in_pModel,
CdotXSITemplate in_pTemplate,
EXSIShapeType  in_Type  
)

Constructor

Parameters:
in_pScene  Parent scene
in_pModel  Parent model
in_pTemplate  Refered template
in_Type  the type of shape to construct
Returns:
an instance of CSLShape

virtual ~CSLXSIShape (  )  [virtual]

Destructor


Member Function Documentation

virtual CSLXSISubComponentAttributeList* AddAttributeList ( CSLXSISubComponentAttributeList::EAttributeType  in_AttributeType  )  [virtual]

Add a new sub component attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the newly created list.

SI_Int GetAttributeListCount (  ) 

Return the number of sub component attribute lists.

Returns:
SI_Int Number of sub component attribute lists.

SI_Int GetAttributeListCountBySemantic ( SI_Char *  in_pSemantic  ) 

Return the number of sub component attribute lists with the given semantic.

Returns:
SI_Int Number of sub component attribute lists with the given semantic.

CSIBCArray<CSLXSISubComponentAttributeList*>* AttributeLists (  ) 

Return an array of all sub component attribute list.

Returns:
CSLXSISubComponentAttributeList** Array of pointers to sub component attribute list.

SI_Error RemoveAttributeList (  ) 

Remove the last sub component attribute list.

Returns:
SI_Error Error code.

SI_Error RemoveAttributeList ( CSLXSISubComponentAttributeList in_pAttributeList  ) 

Remove the specified sub component attribute list.

Returns:
SI_Error Error code.

SI_Error RemoveAttributeList ( SI_Int  in_iIndex  ) 

Remove the specified sub component attribute list.

Returns:
SI_Error Error code.

SI_Error ClearAttributeLists (  ) 

Remove all sub component attribute list.

Returns:
SI_Error Error code.

SI_Error ClearAttributeListsBySemantic ( SI_Char *  in_pSemantic  ) 

Remove all sub component attribute list that has the given semantic.

Returns:
SI_Error Error code.

CSLXSISubComponentAttributeList* ConnectAttributeList ( CSLXSISubComponentAttributeList in_pNewXSISubComponentAttributeList  ) 

Connect a new sub component attribute list.

Returns:
CSLXSISubComponentAttributeList The newly connected sub component attribute list.

CSLXSISubComponentAttributeList* GetFirstAttributeListBySemantic ( SI_Char *  in_pSemantic  ) 

Get the first sub component attribute list with the corresponding semantic.

Returns:
CSLXSISubComponentAttributeList* Pointer to the first sub component attribute list with the corresponding semantic.

CSLXSISubComponentAttributeList* GetNextAttributeListBySemantic ( SI_Char *  in_pSemantic  ) 

Get the next sub component attribute list with the corresponding semantic.

Returns:
CSLXSISubComponentAttributeList* Pointer to the next sub component attribute list with the corresponding semantic.

CSLXSISubComponentAttributeList* AddVertexPositionList (  ) 

Add a new POSITION attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the newly created POSITION attribute list.

CSLXSISubComponentAttributeList* GetVertexPositionList (  ) 

Get the POSITION attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the POSITION attribute list.

SI_Error RemoveVertexPositionList (  ) 

Remove the last POSITION attribute list.

Returns:
SI_Error Error code.

CSLXSISubComponentAttributeList* AddNormalList (  ) 

Add a new NORMAL attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the newly created NORMAL attribute list.

CSLXSISubComponentAttributeList* GetFirstNormalList (  ) 

Get the first NORMAL attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the first NORMAL attribute list.

CSLXSISubComponentAttributeList* GetNextNormalList (  ) 

Get the next NORMAL attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the next NORMAL attribute list.

SI_Int GetNormalListCount (  ) 

Get the number of NORMAL attribute list.

Returns:
SI_Int The number of NORMAL attribute list.

SI_Error RemoveNormalList (  ) 

Remove the last NORMAL attribute list.

Returns:
SI_Error Error code.

SI_Error ClearNormalLists (  ) 

Clear all the NORMAL attribute list.

Returns:
SI_Error Error code.

CSLXSISubComponentAttributeList* AddColorList (  ) 

Add a new COLOR attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the newly created COLOR attribute list.

CSLXSISubComponentAttributeList* GetFirstColorList (  ) 

Get the first COLOR attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the first COLOR attribute list.

CSLXSISubComponentAttributeList* GetNextColorList (  ) 

Get the next COLOR attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the next COLOR attribute list.

SI_Int GetColorListCount (  ) 

Get the number of COLOR attribute list.

Returns:
SI_Int The number of COLOR attribute list.

SI_Error RemoveColorList (  ) 

Remove the last COLOR attribute list.

Returns:
SI_Error Error code.

SI_Error ClearColorLists (  ) 

Clear all the COLOR attribute list.

Returns:
SI_Error Error code.

CSLXSISubComponentAttributeList* AddTexCoordList (  ) 

Add a new TEXCOORD attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the newly created TEXCOORD attribute list.

CSLXSISubComponentAttributeList* GetFirstTexCoordList (  ) 

Get the first TEXCOORD attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the first TEXCOORD attribute list.

CSLXSISubComponentAttributeList* GetNextTexCoordList (  ) 

Get the next TEXCOORD attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the next TEXCOORD attribute list.

SI_Int GetTexCoordListCount (  ) 

Get the number of TEXCOORD attribute list.

Returns:
SI_Int The number of TEXCOORD attribute list.

SI_Error RemoveTexCoordList (  ) 

Remove the last TEXCOORD attribute list.

Returns:
SI_Error Error code.

SI_Error ClearTexCoordLists (  ) 

Clear all the TEXCOORD attribute list.

Returns:
SI_Error Error code.

CSLXSISubComponentAttributeList* AddWeightMapList (  ) 

Add a new WEIGHTMAP attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the newly created WEIGHTMAP attribute list.

CSLXSISubComponentAttributeList* GetFirstWeightMapList (  ) 

Get the first WEIGHTMAP attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the first WEIGHTMAP attribute list.

CSLXSISubComponentAttributeList* GetNextWeightMapList (  ) 

Get the next WEIGHTMAP attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the next WEIGHTMAP attribute list.

SI_Int GetWeightMapListCount (  ) 

Get the number of WEIGHTMAP attribute list.

Returns:
SI_Int The number of WEIGHTMAP attribute list.

SI_Error RemoveWeightMapList (  ) 

Remove the last WEIGHTMAP attribute list.

Returns:
SI_Error Error code.

SI_Error ClearWeightMapLists (  ) 

Clear all the WEIGHTMAP attribute list.

Returns:
SI_Error Error code.

CSLXSISubComponentAttributeList* AddTangentList (  ) 

Add a new Tangent attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the newly created Tangent attribute list.

CSLXSISubComponentAttributeList* GetFirstTangentList (  ) 

Get the first Tangent attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the first Tangent attribute list.

CSLXSISubComponentAttributeList* GetNextTangentList (  ) 

Get the next Tangent attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the next Tangent attribute list.

SI_Int GetTangentListCount (  ) 

Get the number of Tangent attribute list.

Returns:
SI_Int The number of Tangent attribute list.

SI_Error RemoveTangentList (  ) 

Remove the last Tangent attribute list.

Returns:
SI_Error Error code.

SI_Error ClearTangentLists (  ) 

Clear all the Tangent attribute list.

Returns:
SI_Error Error code.

CSLXSISubComponentAttributeList* AddBinormalList (  ) 

Add a new Binormal attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the newly created Binormal attribute list.

CSLXSISubComponentAttributeList* GetFirstBinormalList (  ) 

Get the first Binormal attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the first Binormal attribute list.

CSLXSISubComponentAttributeList* GetNextBinormalList (  ) 

Get the next Binormal attribute list.

Returns:
CSLXSISubComponentAttributeList* Pointer to the next Binormal attribute list.

SI_Int GetBinormalListCount (  ) 

Get the number of Binormal attribute list.

Returns:
SI_Int The number of Binormal attribute list.

SI_Error RemoveBinormalList (  ) 

Remove the last Binormal attribute list.

Returns:
SI_Error Error code.

SI_Error ClearBinormalLists (  ) 

Clear all the Binormal attribute list.

Returns:
SI_Error Error code.

virtual ETemplateType Type (  )  [inline, virtual]

Get the template type

Returns:
ETemplateType the template type of the shape surface (XSI_SHAPE)

Implements CSLTemplate.

EXSIShapeType GetShapeType (  )  [inline]

Get the shape type

Returns:
EXSIShapeType the type of the shape surface (XSI_ORDERED or XSI_INDEXED)

void SetShapeType ( EXSIShapeType  in_eShapeType  )  [inline]

Set the shape type

Parameters:
in_eShapeType  The new shape type

virtual 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: