00001 /* -*- C++ -*- */ 00002 00003 /* COPYRIGHT 00004 * 00005 * This file is part of the Visual Effects Engine - VEE 00006 * 00007 * Read the "VEE-LICENSE" file for the license. 00008 * 00009 * Authors & Copyright: 00010 * 00011 * Tommi Ilmonen, Tuukka Heikura, Marko Myllymaa and 00012 * Janne Kontkanen 2001-2004 00013 * 00014 * Additional copyrights: Tekes 2003-2004 00015 * 00016 * firstname.lastname@hut.fi 00017 * 00018 */ 00019 00020 #ifndef VEE_VALUE_OPERATOR_H 00021 #define VEE_VALUE_OPERATOR_H 00022 00023 #include <vee_operator.h> 00024 00025 /* #include <vee_matrix3.h> 00026 #include <vee_vector3.h> */ 00027 00028 #include <string> 00029 00030 class VEE_Value; 00031 class VEE_Object; 00032 00034 class VEE_ValueOperator : public VEE_Operator 00035 { 00036 public: 00037 VEE_ValueOperator(); 00038 VEE_ValueOperator(const VEE_ValueOperator & ); 00039 00040 VEE_ValueOperator(const std::string &, VEE_Value *); 00041 VEE_ValueOperator(const std::string &, float); 00042 VEE_ValueOperator(const std::string &, const VEE_Matrix3 &); 00043 VEE_ValueOperator(const std::string &, const VEE_Vector3 &); 00044 00045 virtual ~VEE_ValueOperator(); 00046 00047 virtual bool setValue(const char *, VEE_Value *); 00048 00049 virtual void operate(VEE_Object *, float); 00050 virtual VEE_Operator * clone() const; 00051 00052 void set(const std::string &, VEE_Value *); 00053 00054 VEE_ValueOperator & operator = (const VEE_ValueOperator &); 00055 00056 protected: 00057 VEE_Value * m_value; 00058 std::string m_id; 00059 }; 00060 00061 00062 #endif