diff --git a/src/OpenFOAM/primitives/demandDrivenEntry/demandDrivenEntry.H b/src/OpenFOAM/primitives/demandDrivenEntry/demandDrivenEntry.H index e56934d92eec6ef1f40a6c06c2091cb3062945d9..148dd795e611e409fb65f937253dbaf0b1c4d177 100644 --- a/src/OpenFOAM/primitives/demandDrivenEntry/demandDrivenEntry.H +++ b/src/OpenFOAM/primitives/demandDrivenEntry/demandDrivenEntry.H @@ -105,6 +105,9 @@ public: // Public Member Functions + //- Initialise + inline void initialise() const; + //- Return the value inline const Type& value() const; diff --git a/src/OpenFOAM/primitives/demandDrivenEntry/demandDrivenEntryI.H b/src/OpenFOAM/primitives/demandDrivenEntry/demandDrivenEntryI.H index 5a6a3e31b315222cf9e7ad8503d8d9716980af62..c22ec7f6da1619617229fb68f7a994eb9fd3321f 100644 --- a/src/OpenFOAM/primitives/demandDrivenEntry/demandDrivenEntryI.H +++ b/src/OpenFOAM/primitives/demandDrivenEntry/demandDrivenEntryI.H @@ -28,13 +28,20 @@ License // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // template<class Type> -inline const Type& Foam::demandDrivenEntry<Type>::value() const +inline void Foam::demandDrivenEntry<Type>::initialise() const { if (!stored_) { dict_.lookup(keyword_) >> value_; stored_ = true; } +} + + +template<class Type> +inline const Type& Foam::demandDrivenEntry<Type>::value() const +{ + initialise(); return value_; }