TuttleOFX  1
ParamBoolean.hpp
Go to the documentation of this file.
00001 #ifndef _TUTTLE_HOST_CORE_ATTRIBUTE_PARAMBOOLEAN_HPP_
00002 #define _TUTTLE_HOST_CORE_ATTRIBUTE_PARAMBOOLEAN_HPP_
00003 
00004 #include "Param.hpp"
00005 
00006 #include <tuttle/host/ofx/attribute/OfxhParamBoolean.hpp>
00007 
00008 namespace tuttle {
00009 namespace host {
00010 namespace attribute {
00011 
00012 class ParamBoolean : public Param
00013         , public ofx::attribute::OfxhParamBoolean
00014 {
00015 protected:
00016         bool _value;
00017 
00018 public:
00019         ParamBoolean( INode& effect, const std::string& name, const ofx::attribute::OfxhParamDescriptor& descriptor, const std::size_t index = 0 );
00020         virtual ParamBoolean* clone() const { return new ParamBoolean( *this ); }
00021 
00022         bool getDefault() const;
00023 
00024         void getValue( bool& ) const OFX_EXCEPTION_SPEC;
00025         void getValueAtTime( const OfxTime time, bool& ) const OFX_EXCEPTION_SPEC;
00026         void setValue( const bool&, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC;
00027         void setValueAtTime( const OfxTime time, const bool&, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC;
00028 
00029         void setValueFromExpression( const std::string& value, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC;
00030 
00031         void copy( const ParamBoolean& p ) OFX_EXCEPTION_SPEC;
00032         void copy( const OfxhParam& p ) OFX_EXCEPTION_SPEC;
00033 };
00034 
00035 }
00036 }
00037 }
00038 
00039 #endif