00001 //*************************************************************************************** 00002 // 00003 // File supervisor: Crosswalk team 00004 // 00005 // Copyright 2008 Autodesk, Inc. All rights reserved. 00006 // Use of this software is subject to the terms of the Autodesk license agreement 00007 // provided at the time of installation or download, or which otherwise accompanies 00008 // this software in either electronic or hard copy form. 00009 // 00010 //*************************************************************************************** 00011 00012 #ifndef _COLLADAMESH_H 00013 #define _COLLADAMESH_H 00014 00015 #include "Template.h" 00016 #include "Logger.h" 00017 #include "Scene.h" 00018 #include "COLLADATemplate.h" 00019 #include "Model.h" 00020 #include "XSIMesh.h" 00021 #include "COLLADAShape.h" 00022 #include "COLLADAScene.h" 00023 #include "COLLADAVertexList.h" 00024 00030 class XSIEXPORT CSLCOLLADAMesh : public CSLXSIMesh 00031 { 00032 public: 00034 // Construction/destruction 00036 CSLCOLLADAMesh(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate); 00037 virtual ~CSLCOLLADAMesh(); 00038 00039 virtual CSLXSITriangleList* AddXSITriangleList(); 00040 virtual CSLXSIPolygonList* AddXSIPolygonList(); 00041 00042 SI_Error CreateXSITriangleList(CCOLLADATemplate* in_pContainer); 00043 SI_Error CreateXSIPolygonList(CCOLLADATemplate* in_pContainer); 00044 00049 virtual CSLXSIShapeAnimation* CreateXSIShapeAnimation(EFCurveInterpolationType in_Type); 00050 00051 virtual SI_Error Fix(); 00052 virtual SI_Error Synchronize(); 00053 00054 protected: 00055 00056 CCOLLADATemplate* m_pMeshContainerTemplate; 00057 CCOLLADATemplate* m_pVerticesTemplate; 00058 CdotXSIParam* m_pVertexIDParam; 00059 CdotXSIParam* m_pSourceParam; 00060 public: 00061 00062 }; 00063 00064 #endif