# Angle.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 _ANGLE_H
    00013 #define _ANGLE_H
    00014
    00015 #include "Template.h"
    00016
    00025 class XSIEXPORT CSLAngle
    00026     : public CSLTemplate
    00027 {
    00028 public:
    00029
    00031     enum EAngleType
    00032     {
    00033         SI_DEGREES,
    00034         SI_RADIANS
    00035     };
    00036
    00038
    00043     CSLAngle
    00044     (
    00045         CSLScene* in_pScene,
    00046         CSLModel *in_pModel,
    00047         CdotXSITemplate* in_pTemplate
    00048     );
    00049
    00050     ~CSLAngle();
    00051
    00055     EAngleType GetAngleType();
    00056
    00060     void SetAngleType( EAngleType in_Type );
    00061
    00065     inline ETemplateType Type();
    00066
    00067     CSLEnumProxy<EAngleType, SI_RADIANS>* GetAngleProxy() { return &m_Angle;};
    00068
    00069 private:
    00070     CSLEnumProxy<EAngleType, SI_RADIANS> m_Angle;
    00071     SI_Void *in_pReserved;  // reserved for future extension
    00072 };
    00073
    00074 #endif