COLLADAMesh.h

Go to the documentation of this file.
00001 //***************************************************************************************
00002 // File supervisor: Crosswalk team
00012 //***************************************************************************************
00013 
00014 #ifndef _COLLADAMESH_H
00015 #define _COLLADAMESH_H
00016 
00017 #include "Template.h"
00018 #include "Logger.h"
00019 #include "Scene.h"
00020 #include "COLLADATemplate.h"
00021 #include "Model.h"
00022 #include "XSIMesh.h"
00023 #include "COLLADAShape.h"
00024 #include "COLLADAScene.h"
00025 #include "COLLADAVertexList.h"
00026 
00029 class XSIEXPORT CSLCOLLADAMesh : public CSLXSIMesh
00030 {
00031 public:
00033     // Construction/destruction
00035     CSLCOLLADAMesh(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
00036     virtual ~CSLCOLLADAMesh();
00037 
00038     virtual CSLXSITriangleList*             AddXSITriangleList();
00039     virtual CSLXSIPolygonList*              AddXSIPolygonList();
00040 
00041     SI_Error    CreateXSITriangleList(CCOLLADATemplate* in_pContainer);
00042     SI_Error    CreateXSIPolygonList(CCOLLADATemplate* in_pContainer);
00043 
00048     virtual CSLXSIShapeAnimation*   CreateXSIShapeAnimation(EFCurveInterpolationType in_Type);
00049 
00050     virtual SI_Error                Fix();
00051     virtual SI_Error                Synchronize();
00052 
00053 protected:
00054 
00055     CCOLLADATemplate*   m_pMeshContainerTemplate;
00056     CCOLLADATemplate*   m_pVerticesTemplate;
00057     CdotXSIParam*       m_pVertexIDParam;
00058     CdotXSIParam*       m_pSourceParam;
00059 public:
00060 
00061 };
00062 
00063 #endif