/* * DiscreteParameter.hpp * * Created on: Sep 30, 2011 * Author: heber */ #ifndef DISCRETEPARAMETER_HPP_ #define DISCRETEPARAMETER_HPP_ // include config.h #ifdef HAVE_CONFIG_H #include #endif #include #include "DiscreteValue.hpp" #include "Parameter.hpp" #include /** This class encapsulates a clonable, continuous value. * */ template class DiscreteParameter : public Parameter, public DiscreteValue { public: DiscreteParameter(const std::string &_name); DiscreteParameter(const std::string &_name, const std::vector &_ValidValues); DiscreteParameter(const std::string &_name, const std::vector &_ValidValues, const T &_value); virtual ~DiscreteParameter(); // comparator bool operator==(const DiscreteParameter &_instance) const; bool operator!=(const DiscreteParameter &_instance) const { return !((*this)==(_instance)); } Parameter* clone() const; private: DiscreteParameter(); }; #include "DiscreteParameter_impl.hpp" #endif /* DISCRETEPARAMETER_HPP_ */