#ifndef _CPASANIMPARM #define _CPASANIMPARM #include "types.h" class CPASAnimParm { public: enum EParmType { kPT_None = -1, kPT_Int32 = 0, kPT_UInt32 = 1, kPT_Float = 2, kPT_Bool = 3, kPT_Enum = 4, }; union UParmValue { int m_int; uint m_uint; float m_float; bool m_bool; }; CPASAnimParm(UParmValue value, EParmType type); static CPASAnimParm NoParameter(); static CPASAnimParm FromInt32(int value); static CPASAnimParm FromUint32(uint value); static CPASAnimParm FromReal32(float value); static CPASAnimParm FromBool(bool val); static CPASAnimParm FromEnum(int value); int GetInt32Value() const; uint GetUint32Value() const; float GetReal32Value() const; bool GetBoolValue() const; int GetEnumValue() const; UParmValue GetParameter() { return x0_value; } private: UParmValue x0_value; EParmType x4_type; }; #endif // _CPASANIMPARM