# Geometry.h

    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 _GEOMETRY_H
    00013 #define _GEOMETRY_H
    00014
    00015 #include "Primitive.h"
    00016
    00017 // Forward declaration
    00018 class CSLShapeAnimation;
    00019
    00021 class XSIEXPORT CSLGeometry
    00022     : public CSLPrimitive
    00023 {
    00024 public:
    00025
    00032     CSLGeometry(CSLScene* in_pScene, CSLModel *in_pModel, CdotXSITemplate* in_pTemplate);
    00033
    00036     virtual ~CSLGeometry();
    00037
    00042     CSLShapeAnimation* CreateShapeAnimation(EFCurveInterpolationType in_Type);
    00043
    00047     CSLShapeAnimation* ShapeAnimation();
    00048
    00052     SI_Error DestroyShapeAnimation();
    00053
    00058     CSLShapeAnimation* ConnectShapeAnimation(CSLShapeAnimation* in_pNewShapeAnim);
    00059
    00064     virtual SI_Error Synchronize();
    00065
    00070     virtual CSLAnimatableType* ParameterFromName(SI_Char *in_szName);
    00071
    00072 private:
    00073     CSLShapeAnimation* m_pShapeAnimation;
    00074
    00075     void *m_pReserved;  // reserved for future extension
    00076 };
    00077
    00078 #endif