00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef _COLLADASHAPE_H
00017 #define _COLLADASHAPE_H
00018
00019 #include "Template.h"
00020 #include "Logger.h"
00021 #include "Scene.h"
00022 #include "COLLADATemplate.h"
00023 #include "Model.h"
00024 #include "XSIShape.h"
00025 #include "COLLADAScene.h"
00026 #include "COLLADASubComponentAttributeList.h"
00027
00032 class CSLCOLLADAMesh;
00033
00034 class XSIEXPORT CSLCOLLADAShape : public CSLXSIShape
00035 {
00036 public:
00038
00040 CSLCOLLADAShape(CSLScene* in_pScene,
00041 CSLModel *in_pModel,
00042 CdotXSITemplate* in_pTemplate,
00043 CCOLLADATemplate* in_pVerticesDecl,
00044 CdotXSITemplates* in_pInputSemantics);
00045 virtual ~CSLCOLLADAShape();
00046
00047 virtual SI_Error Synchronize();
00048
00049 virtual CSLXSISubComponentAttributeList* AddAttributeList(CSLXSISubComponentAttributeList::EAttributeType in_AttributeType);
00050
00051 virtual void SetParentMesh(CSLCOLLADAMesh* in_pCOLLADAMesh);
00052 virtual CSLCOLLADAMesh* GetParentMesh();
00053 protected:
00054
00055 CCOLLADATemplate* m_pVerticesDecl;
00056
00057 private:
00058 CSLCOLLADAMesh* m_pParentMesh;
00059 bool m_bSynchronized;
00060
00061 public:
00062
00063 };
00064
00065 #endif