parameter.hpp
Go to the documentation of this file.
00001 
00011 /*****************************************************************************
00012 ** Ifdefs
00013 *****************************************************************************/
00014 
00015 #ifndef ECL_UTILITIES_PARAMETER_HPP_
00016 #define ECL_UTILITIES_PARAMETER_HPP_
00017 
00018 /*****************************************************************************
00019 ** Namespaces
00020 *****************************************************************************/
00021 
00022 namespace ecl {
00023 
00024 /*****************************************************************************
00025 ** Parameter
00026 *****************************************************************************/
00056 template <typename T> class Parameter {
00057     public:
00058         explicit Parameter() : parameter() {}; 
00063         Parameter(const T& value) : parameter(value){};
00064 
00065         virtual ~Parameter() {}
00066 
00067         /******************************************
00068         ** Operator =
00069         *******************************************/
00078         void operator =(const T& value) { parameter = value; }
00087         operator const T&() const { return parameter; }
00088 
00089         /******************************************
00090         ** Operator ()
00091         *******************************************/
00099         const T& operator ()() const { return parameter; }
00107         void operator ()( const T& value ) { parameter = value; }
00108 
00109     private:
00110         T parameter;
00111 };
00112 
00113 }; // Namespace ecl
00114 
00115 #endif /*ECL_UTILITIES_PARAMETER_HPP_*/


ecl_utilities
Author(s): Daniel Stonier (d.stonier@gmail.com)
autogenerated on Thu Jan 2 2014 11:12:20