.. _program_listing_file__tmp_ws_src_ecl_core_ecl_utilities_include_ecl_utilities_parameter.hpp: Program Listing for File parameter.hpp ====================================== |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/ecl_core/ecl_utilities/include/ecl/utilities/parameter.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp /***************************************************************************** ** Ifdefs *****************************************************************************/ #ifndef ECL_UTILITIES_PARAMETER_HPP_ #define ECL_UTILITIES_PARAMETER_HPP_ /***************************************************************************** ** Namespaces *****************************************************************************/ namespace ecl { /***************************************************************************** ** Parameter *****************************************************************************/ template class Parameter { public: explicit Parameter() : parameter() {}; Parameter(const T& value) : parameter(value){}; virtual ~Parameter() {} /****************************************** ** Operator = *******************************************/ void operator =(const T& value) { parameter = value; } operator const T&() const { return parameter; } /****************************************** ** Operator () *******************************************/ const T& operator ()() const { return parameter; } void operator ()( const T& value ) { parameter = value; } private: T parameter; }; } // namespace ecl #endif /*ECL_UTILITIES_PARAMETER_HPP_*/