TuttleOFX
1
|
00001 #ifndef _TUTTLE_HOST_CORE_ATTRIBUTE_PARAMDOUBLE2D_HPP_ 00002 #define _TUTTLE_HOST_CORE_ATTRIBUTE_PARAMDOUBLE2D_HPP_ 00003 00004 #include "Param.hpp" 00005 #include "ParamDoubleMultiDim.hpp" 00006 00007 namespace tuttle { 00008 namespace host { 00009 namespace attribute { 00010 00011 class ParamDouble2D : public Param 00012 , public ParamDoubleMultiDim<2> 00013 { 00014 public: 00015 ParamDouble2D( INode& effect, const std::string& name, const ofx::attribute::OfxhParamDescriptor& descriptor ); 00016 ParamDouble2D* clone() const { return new ParamDouble2D( *this ); } 00017 00018 OfxPointD getDefault() const; 00019 00020 00021 void getValue( double& x, double& y ) const OFX_EXCEPTION_SPEC; 00022 void getValueAtTime( const OfxTime time, double& x, double& y ) const OFX_EXCEPTION_SPEC; 00023 00024 void setValue( const double& x, const double& y, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC; 00025 void setValueAtTime( const OfxTime time, const double& x, const double& y, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC; 00026 00027 void setValue( const int& x, const int& y, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC 00028 { 00029 setValue( (double)x, (double)y, change ); 00030 } 00031 void setValueAtTime( const OfxTime time, const int& x, const int& y, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC 00032 { 00033 setValueAtTime( time, (double)x, (double)y, change ); 00034 } 00035 }; 00036 00037 } 00038 } 00039 } 00040 00041 #endif