/* * Copyright (c) 2001, DecisionSoft Limited All rights reserved. * Please see LICENSE.TXT for more information. */ #ifndef _VARHASHENTRYIMPL_HPP #define _VARHASHENTRYIMPL_HPP #include #include #include /** The class that stores the values of the variables. */ template class VarHashEntryImpl : public VarHashEntry { public: /// Meaningfull constructor VarHashEntryImpl(const TYPE &value); /// virtual destructor (does nothing) virtual ~VarHashEntryImpl(); /** Gets the value of the variable (overload in derived classes for special behaviour) */ virtual const TYPE &getValue() const; /** Sets the value of the variable (overload in derived classes for special behaviour) */ virtual void setValue(const TYPE &value); protected: TYPE _value; }; template VarHashEntryImpl::VarHashEntryImpl(const TYPE &value) : _value(value) { } template VarHashEntryImpl::~VarHashEntryImpl() { // Nothing to do } template const TYPE &VarHashEntryImpl::getValue() const { return _value; } template void VarHashEntryImpl::setValue(const TYPE &value) { _value = value; } #endif