diff --git a/alib2abstraction/src/abstraction/ValueHolder.hpp b/alib2abstraction/src/abstraction/ValueHolder.hpp index fef24d6c4a3ef809dbf2b0c8f16f87cc480c5916..1138f22a0c75d2f6a1a73ea48691fe4f6e8cfeb8 100644 --- a/alib2abstraction/src/abstraction/ValueHolder.hpp +++ b/alib2abstraction/src/abstraction/ValueHolder.hpp @@ -23,6 +23,10 @@ public: Type && getValue ( ) override { return std::move ( m_data.value ( ) ); } + + const Type & getValue ( ) const override { + return m_data.value ( ); + } }; template < class Type > @@ -39,6 +43,10 @@ public: Type && getValue ( ) override { return std::move ( m_data->get ( ) ); } + + const Type & getValue ( ) const override { + return m_data->get ( ); + } }; template < class Type > diff --git a/alib2abstraction/src/abstraction/ValueHolderInterface.hpp b/alib2abstraction/src/abstraction/ValueHolderInterface.hpp index 319282015cf53e2f7f713e8d68dceaac69150893..aa0f68b548fadc0614d7bdf13c43d7545757c65f 100644 --- a/alib2abstraction/src/abstraction/ValueHolderInterface.hpp +++ b/alib2abstraction/src/abstraction/ValueHolderInterface.hpp @@ -15,6 +15,8 @@ public: virtual Type && getValue ( ) = 0; + virtual const Type & getValue ( ) const = 0; + }; template < class ParamType >