TuttleOFX  1
TuttleOFX/libraries/tuttle/src/tuttle/host/attribute/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/OfxhParam.hpp>
00007 #include <tuttle/host/ofx/attribute/OfxhParamBoolean.hpp>
00008 
00009 namespace tuttle {
00010 namespace host {
00011 namespace attribute {
00012 
00013 class ParamBoolean : public Param
00014         , public ofx::attribute::OfxhParamBoolean
00015 {
00016 protected:
00017         bool _value;
00018 
00019 public:
00020         ParamBoolean( INode& effect, const std::string& name, const ofx::attribute::OfxhParamDescriptor& descriptor, const std::size_t index = 0 );
00021         virtual ParamBoolean* clone() const { return new ParamBoolean( *this ); }
00022 
00023         bool getDefault() const;
00024 
00025         void getValue( bool& ) const OFX_EXCEPTION_SPEC;
00026         void getValueAtTime( const OfxTime time, bool& ) const OFX_EXCEPTION_SPEC;
00027         void setValue( const bool&, const ofx::attribute::EChange change ) OFX_EXCEPTION_SPEC;
00028         void setValueAtTime( const OfxTime time, const bool&, 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 ParamBoolean& p ) OFX_EXCEPTION_SPEC;
00034         void copy( const OfxhParam& p ) OFX_EXCEPTION_SPEC;
00035 #endif
00036 };
00037 
00038 }
00039 }
00040 }
00041 
00042 #endif