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 _XSIGEOMETRY_H 00013 #define _XSIGEOMETRY_H 00014 00015 #include "Primitive.h" 00016 00017 // Forward declaration 00018 class CSLXSIShapeAnimation; 00019 00023 class XSIEXPORT CSLXSIGeometry 00024 : public CSLPrimitive 00025 { 00026 public: 00027 00034 CSLXSIGeometry(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate); 00035 00038 virtual ~CSLXSIGeometry(); 00039 00044 virtual CSLXSIShapeAnimation* CreateXSIShapeAnimation(EFCurveInterpolationType in_Type); 00045 00049 virtual CSLXSIShapeAnimation* XSIShapeAnimation(); 00050 00054 virtual SI_Error DestroyXSIShapeAnimation(); 00055 00060 virtual CSLXSIShapeAnimation* ConnectXSIShapeAnimation(CSLXSIShapeAnimation* in_pNewXSIShapeAnim); 00061 00066 virtual SI_Error Synchronize(); 00067 00072 virtual CSLAnimatableType* ParameterFromName(SI_Char *in_szName); 00073 00074 private: 00075 CSLXSIShapeAnimation* m_pXSIShapeAnimation; 00076 00077 void *m_pReserved; // reserved for future extension 00078 }; 00079 00080 #endif