25template <VariableType p>
138 static std::pair<propertyMap::iterator, propertyMap::iterator>
m_pair;
148 template <
typename T>
151 const MBool hasDefault = (default_value !=
nullptr);
158 template <
typename T>
160 T* defaultValue =
nullptr;
167 template <
typename T>
169 const T* default_value,
MInt pos = 0) {
177 template <
typename T>
180 T* defaultValue =
nullptr;
186 template <
typename T,
typename F>
188 const T* defaultValue,
MInt position, F&& f);
191 const MInt* default_value,
MInt pos);
202 template <
typename T,
typename F>
204 MBool has_default,
const T* defaultValue,
MInt position, F&& f);
218 const MInt solverId,
MBool has_default,
const MBool* default_value,
228inline MInt read_nDim() {
241 nDim = Context::getBasicProperty<MInt>(
"nDim", AT_, &nDim);
256 nDim = Context::getBasicProperty<MInt>(
"spaceDimensions", AT_);
259 mTerm(1, AT_,
"nDim / spaceDimensions property not found");
static void communicateProperties()
Communicates properties to check if default falues match.
static MBool m_checkingProperties
static propertyMap * m_propertyMapLowercase
static void initializationProcessFinished()
Sets flag to forbide property access.
static MString m_propertyFileText
static T getBasicProperty(const MString name, const MString &nameOfCallingFunction, const T *default_value, MInt pos=0)
static void dump(const MString &fileName)
Dump all properties to text file.
static void init()
This intializes the property Map.
static T getBasicProperty(const MString name, const MString &nameOfCallingFunction, MInt pos=0)
static MString propertyFileName()
Return name of most recently read property file.
static void writeProperties(char *fileName)
static void sendProperties(MInt rank)
Sends the property list to another cpu.
static void checkPropertyViolation(MInt partnerrank, std::list< MProperty * > *prop)
Checks if local properties differ from received properties.
static MInt propertySolverId(const MString &name, MInt solverId=m_noSolvers)
Returns the number of elements of a property.
static MInt propertyLength(const MString &name, MInt solverId=m_noSolvers)
Returns the number of elements of a property.
static MBool isSameValue(const MInt v1, const MInt v2)
static std::pair< propertyMap::iterator, propertyMap::iterator > m_pair
static MInt getSolverPropertyOverloaded(const MString &nameOfCallingFunction, const MString &name, const MInt solverId, MBool has_default, const MInt *default_value, MInt pos)
static IONetcdf * m_IONetcdf
static T getSolverProperty(const MString name, const MInt solverId, const MString &nameOfCallingFunction, const T *default_value, MInt pos=0)
static MInt getBasicPropertyOverloaded(const MString &nameOfCallingFunction, const MString &name, MBool has_default, const MInt *default_value, MInt pos)
static void addProperty(MProperty *)
This method adds properties.
static void writePropertiesHumanReadable()
Write the properties into a text file.
static assembly * m_assembly
static MString propertyFileText()
Return unprocessed content of most recently read property file.
static T getBasicPropertyImplicit(const MString &nameOfCallingFunction, const MString &name, MBool has_default, const T *defaultValue, MInt position, F &&f)
Returns the value of the requested basic level property (implicit).
static void readPropertyFile(FileType, const MString &fileName)
static void assertPropertyLength(const MString &name, const MInt length, const MInt solverId=m_noSolvers)
Assert that the length of a property matches the given length.
static MBool solverPropertyExists(const MString &name, MInt solver)
Checks existence of a solver property details This function returns true, if the solver property with...
static T getSolverPropertyImplicit(const MString &nameOfCallingFunction, const MString &name, const MInt solverId, MBool has_default, const T *defaultValue, MInt position, F &&f)
Returns the value of the requested solver property (implicit).
static MBool isSameValue(const MBool v1, const MBool v2)
static zoneMap * m_zoneMap
static MBool propertyExists(const MString &name, MInt solver=m_noSolvers)
This function checks if a property exists in general.
static propertyMap * m_propertyMap
static T getSolverProperty(const MString name, const MInt solverId, const MString &nameOfCallingFunction, MInt pos=0)
static std::list< MProperty * > * receiveProperties(MInt rank)
Receives a property list from another cpu.
static MString m_propertyFileOutputName
static MBool isSameValue(const MString v1, const MString v2)
static MBool isSameValue(const MFloat v1, const MFloat v2)
std::map< MString, MZone * > zoneMap
std::multimap< MString, MProperty * > propertyMap
void mTerm(const MInt errorCode, const MString &location, const MString &message)
MBool approx(const T &, const U &, const T)
std::basic_string< char > MString
Type traits for enum type.
static const MString name()
static const MString name()
static const MString name()
static const MString name()