TuttleOFX  1
ParamDoubleMultiDim.hpp
Go to the documentation of this file.
00001 #ifndef _TUTTLE_HOST_CORE_ATTRIBUTE_PARAMDOUBLE_MULTIDIM_HPP_
00002 #define _TUTTLE_HOST_CORE_ATTRIBUTE_PARAMDOUBLE_MULTIDIM_HPP_
00003 
00004 /* Most of the implementation is in the AnimatedParam template */
00005 #include "ParamDouble.hpp"
00006 
00007 #include <tuttle/host/ofx/attribute/OfxhMultiDimParam.hpp>
00008 
00009 namespace tuttle {
00010 namespace host {
00011 namespace attribute {
00012 
00013 template <std::size_t DIM>
00014 class ParamDoubleMultiDim : public ofx::attribute::OfxhMultiDimParam<ParamDouble, DIM >
00015 {
00016 public:
00017         typedef ofx::attribute::OfxhMultiDimParam<ParamDouble, DIM > MultiDimParamParent;
00018         
00019         ParamDoubleMultiDim( const ofx::attribute::OfxhParamDescriptor& descriptor, const std::string& name, ofx::attribute::OfxhParamSet& setInstance )
00020         : MultiDimParamParent( descriptor, name, setInstance )
00021         {}
00022 
00023         void setValueAtIndex( const std::size_t index, const double& v, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC
00024         {
00025                 MultiDimParamParent::setValueAtIndex( index, v, change );
00026         }
00027         void setValueAtTimeAndIndex( const OfxTime time, const std::size_t index, const double& v, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC
00028         {
00029                 MultiDimParamParent::setValueAtTimeAndIndex( time, index, v, change );
00030         }
00031         void setValueAtIndex( const std::size_t index, const int& v, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC
00032         {
00033                 MultiDimParamParent::setValueAtIndex( index, (double)v, change );
00034         }
00035         void setValueAtTimeAndIndex( const OfxTime time, const std::size_t index, const int& v, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC
00036         {
00037                 MultiDimParamParent::setValueAtTimeAndIndex( time, index, (double)v, change );
00038         }
00039 };
00040 
00041 }
00042 }
00043 }
00044 
00045 #endif