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