Geometry.h

Go to the documentation of this file.
00001 //***************************************************************************************
00002 // File supervisor: Crosswalk team
00012 //***************************************************************************************
00013 
00014 #ifndef _GEOMETRY_H
00015 #define _GEOMETRY_H
00016 
00017 #include "Primitive.h"
00018 
00019 // Forward declaration
00020 class CSLShapeAnimation;
00021 
00024 class XSIEXPORT CSLGeometry
00025     : public CSLPrimitive
00026 {
00027 public:
00028 
00035     CSLGeometry(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
00036 
00039     virtual ~CSLGeometry();
00040 
00045     CSLShapeAnimation* CreateShapeAnimation(EFCurveInterpolationType in_Type);
00046 
00050     CSLShapeAnimation* ShapeAnimation();
00051 
00055     SI_Error DestroyShapeAnimation();
00056 
00061     CSLShapeAnimation* ConnectShapeAnimation(CSLShapeAnimation* in_pNewShapeAnim);
00062 
00066     virtual SI_Error Synchronize();
00067 
00072     virtual CSLAnimatableType* ParameterFromName(SI_Char *in_szName);
00073 
00074 private:
00075     CSLShapeAnimation* m_pShapeAnimation;
00076 
00077     void *m_pReserved;  // reserved for future extension
00078 };
00079 
00080 #endif