From b6b5eb17d73dc0ce235da2bf01631251407d36e6 Mon Sep 17 00:00:00 2001 From: Mark Olesen <Mark.Olesen@Germany> Date: Fri, 16 Jan 2009 12:17:02 +0100 Subject: [PATCH] dimensionedType gets plain lookupOrDefault() static method --- .../dimensionedType/dimensionedType.C | 14 ++++++++++++++ .../dimensionedType/dimensionedType.H | 16 ++++++++++++---- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.C b/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.C index ff51e2c6132..9c1200e30bd 100644 --- a/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.C +++ b/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.C @@ -35,6 +35,20 @@ namespace Foam // * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // +template <class Type> +dimensioned<Type> dimensioned<Type>::lookupOrDefault +( + const word& name, + const dictionary& dict, + const Type& defaultValue, + const dimensionSet& dims +) +{ + Type value = dict.lookupOrDefault<Type>(name, defaultValue); + return dimensioned<Type>(name, dims, value); +} + + template <class Type> dimensioned<Type> dimensioned<Type>::lookupOrAddToDict ( diff --git a/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.H b/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.H index a4fbaf2c17c..1ad252955a3 100644 --- a/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.H +++ b/src/OpenFOAM/dimensionedTypes/dimensionedType/dimensionedType.H @@ -108,8 +108,17 @@ public: //- Construct from an Istream with a given name and dimensions dimensioned(const word&, const dimensionSet&, Istream&); - //- Construct from dictionary, supplying default value so that if the - // value is not found, it is added into the dictionary. + //- Construct from dictionary, with default value. + static dimensioned<Type> lookupOrDefault + ( + const word&, + const dictionary&, + const Type& defaultValue = pTraits<Type>::zero, + const dimensionSet& dims = dimless + ); + + //- Construct from dictionary, with default value. + // If the value is not found, it is added into the dictionary. static dimensioned<Type> lookupOrAddToDict ( const word&, @@ -148,8 +157,7 @@ public: //- Return transpose. dimensioned<Type> T() const; - //- Update the value of the dimensioned<Type> if it is found in the - // dictionary + //- Update the value of dimensioned<Type> if found in the dictionary. bool readIfPresent(const dictionary&); -- GitLab