TuttleOFX
1
|
00001 #ifndef _TUTTLE_HOST_CORE_ATTRIBUTE_PARAMCUSTOM_HPP_ 00002 #define _TUTTLE_HOST_CORE_ATTRIBUTE_PARAMCUSTOM_HPP_ 00003 00004 #include "Param.hpp" 00005 00006 #include <tuttle/host/ofx/attribute/OfxhParamCustom.hpp> 00007 #include <tuttle/host/ImageEffectNode.hpp> 00008 00009 namespace tuttle { 00010 namespace host { 00011 namespace attribute { 00012 00013 class ParamCustom : public Param 00014 , public ofx::attribute::OfxhParamCustom 00015 { 00016 protected: 00017 std::string _value; /// @todo link de parametres 00018 00019 public: 00020 ParamCustom( INode& effect, const std::string& name, const ofx::attribute::OfxhParamDescriptor& descriptor ); 00021 ParamCustom* clone() const { return new ParamCustom( *this ); } 00022 00023 const std::string& getDefault() const; 00024 00025 void getValue( std::string& ) const OFX_EXCEPTION_SPEC; 00026 void getValueAtTime( const OfxTime time, std::string& ) const OFX_EXCEPTION_SPEC; 00027 void setValue( const std::string& value, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC; 00028 void setValueAtTime( const OfxTime time, const std::string& value, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC; 00029 00030 void setValueFromExpression( const std::string& value, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC; 00031 00032 #ifndef SWIG 00033 void copy( const ParamCustom& p ) OFX_EXCEPTION_SPEC; 00034 void copy( const OfxhParam& p ) OFX_EXCEPTION_SPEC; 00035 #endif 00036 }; 00037 00038 } 00039 } 00040 } 00041 00042 #endif