mirror of
https://develop.openfoam.com/Development/openfoam.git
synced 2025-11-28 03:28:01 +00:00
ENH: upgrade from NamedEnum to Enum (issue #515)
This commit is contained in:
@ -48,23 +48,17 @@ namespace functionObjects
|
||||
}
|
||||
}
|
||||
|
||||
template<>
|
||||
const char* Foam::NamedEnum
|
||||
<
|
||||
Foam::functionObjects::abort::actionType,
|
||||
3
|
||||
>::names[] =
|
||||
{
|
||||
"noWriteNow",
|
||||
"writeNow",
|
||||
"nextWrite"
|
||||
};
|
||||
|
||||
const Foam::NamedEnum
|
||||
const Foam::Enum
|
||||
<
|
||||
Foam::functionObjects::abort::actionType,
|
||||
3
|
||||
> Foam::functionObjects::abort::actionTypeNames_;
|
||||
Foam::Time::stopAtControls
|
||||
>
|
||||
Foam::functionObjects::abort::actionNames_
|
||||
{
|
||||
{ Time::stopAtControls::saNoWriteNow, "noWriteNow" },
|
||||
{ Time::stopAtControls::saWriteNow, "writeNow" },
|
||||
{ Time::stopAtControls::saNextWrite, "nextWrite" },
|
||||
};
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * Private Member Functions * * * * * * * * * * * //
|
||||
@ -94,7 +88,7 @@ Foam::functionObjects::abort::abort
|
||||
functionObject(name),
|
||||
time_(runTime),
|
||||
abortFile_("$FOAM_CASE/" + name),
|
||||
action_(nextWrite)
|
||||
action_(Time::stopAtControls::saNextWrite)
|
||||
{
|
||||
abortFile_.expand();
|
||||
read(dict);
|
||||
@ -116,14 +110,12 @@ bool Foam::functionObjects::abort::read(const dictionary& dict)
|
||||
{
|
||||
functionObject::read(dict);
|
||||
|
||||
if (dict.found("action"))
|
||||
{
|
||||
action_ = actionTypeNames_.read(dict.lookup("action"));
|
||||
}
|
||||
else
|
||||
{
|
||||
action_ = nextWrite;
|
||||
}
|
||||
action_ = actionNames_.lookupOrDefault
|
||||
(
|
||||
"action",
|
||||
dict,
|
||||
Time::stopAtControls::saNextWrite
|
||||
);
|
||||
|
||||
if (dict.readIfPresent("file", abortFile_))
|
||||
{
|
||||
@ -143,9 +135,9 @@ bool Foam::functionObjects::abort::execute()
|
||||
{
|
||||
switch (action_)
|
||||
{
|
||||
case noWriteNow :
|
||||
case Time::saNoWriteNow :
|
||||
{
|
||||
if (time_.stopAt(Time::saNoWriteNow))
|
||||
if (time_.stopAt(action_))
|
||||
{
|
||||
Info<< "USER REQUESTED ABORT (timeIndex="
|
||||
<< time_.timeIndex()
|
||||
@ -155,9 +147,9 @@ bool Foam::functionObjects::abort::execute()
|
||||
break;
|
||||
}
|
||||
|
||||
case writeNow :
|
||||
case Time::saWriteNow :
|
||||
{
|
||||
if (time_.stopAt(Time::saWriteNow))
|
||||
if (time_.stopAt(action_))
|
||||
{
|
||||
Info<< "USER REQUESTED ABORT (timeIndex="
|
||||
<< time_.timeIndex()
|
||||
@ -167,9 +159,9 @@ bool Foam::functionObjects::abort::execute()
|
||||
break;
|
||||
}
|
||||
|
||||
case nextWrite :
|
||||
case Time::saNextWrite :
|
||||
{
|
||||
if (time_.stopAt(Time::saNextWrite))
|
||||
if (time_.stopAt(action_))
|
||||
{
|
||||
Info<< "USER REQUESTED ABORT (timeIndex="
|
||||
<< time_.timeIndex()
|
||||
@ -178,6 +170,11 @@ bool Foam::functionObjects::abort::execute()
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
default:
|
||||
{
|
||||
// Invalid choices already filtered out by Enum
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -45,7 +45,7 @@ SourceFiles
|
||||
#define functionObjects_abort_H
|
||||
|
||||
#include "functionObject.H"
|
||||
#include "NamedEnum.H"
|
||||
#include "Time.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
@ -62,33 +62,19 @@ class abort
|
||||
:
|
||||
public functionObject
|
||||
{
|
||||
public:
|
||||
|
||||
// Public data
|
||||
|
||||
//- Enumeration defining the type of action
|
||||
enum actionType
|
||||
{
|
||||
noWriteNow, //!< stop immediately without writing data
|
||||
writeNow, //!< write data and stop immediately
|
||||
nextWrite //!< stop the next time data are written
|
||||
};
|
||||
|
||||
private:
|
||||
|
||||
// Private data
|
||||
|
||||
//- A subset of Time stopAtControls
|
||||
static const Enum<Time::stopAtControls> actionNames_;
|
||||
|
||||
//- Reference to the Time
|
||||
const Time& time_;
|
||||
|
||||
//- The fully-qualified name of the abort file
|
||||
fileName abortFile_;
|
||||
|
||||
//- Action type names
|
||||
static const NamedEnum<actionType, 3> actionTypeNames_;
|
||||
|
||||
//- The type of action
|
||||
actionType action_;
|
||||
Time::stopAtControls action_;
|
||||
|
||||
|
||||
// Private Member Functions
|
||||
@ -97,10 +83,10 @@ private:
|
||||
void removeFile() const;
|
||||
|
||||
//- Disallow default bitwise copy construct
|
||||
abort(const abort&);
|
||||
abort(const abort&) = delete;
|
||||
|
||||
//- Disallow default bitwise assignment
|
||||
void operator=(const abort&);
|
||||
void operator=(const abort&) = delete;
|
||||
|
||||
|
||||
public:
|
||||
@ -127,7 +113,7 @@ public:
|
||||
// Member Functions
|
||||
|
||||
//- Read the dictionary settings
|
||||
virtual bool read(const dictionary&);
|
||||
virtual bool read(const dictionary& dict);
|
||||
|
||||
//- Execute, check existence of abort file and take action
|
||||
virtual bool execute();
|
||||
|
||||
@ -47,32 +47,21 @@ namespace runTimeControls
|
||||
}
|
||||
}
|
||||
}
|
||||
template<>
|
||||
const char* Foam::NamedEnum
|
||||
<
|
||||
Foam
|
||||
::functionObjects
|
||||
::runTimeControls
|
||||
::equationInitialResidualCondition
|
||||
::operatingMode,
|
||||
2
|
||||
>::names[] =
|
||||
{
|
||||
"minimum",
|
||||
"maximum"
|
||||
};
|
||||
|
||||
const Foam::NamedEnum
|
||||
const Foam::Enum
|
||||
<
|
||||
Foam
|
||||
::functionObjects
|
||||
::runTimeControls
|
||||
::equationInitialResidualCondition
|
||||
::operatingMode,
|
||||
2
|
||||
::operatingMode
|
||||
>
|
||||
Foam::functionObjects::runTimeControls::equationInitialResidualCondition::
|
||||
operatingModeNames;
|
||||
operatingModeNames
|
||||
{
|
||||
{ operatingMode::omMin, "minimum" },
|
||||
{ operatingMode::omMax, "maximum" },
|
||||
};
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
@ -90,7 +79,7 @@ equationInitialResidualCondition
|
||||
fieldNames_(dict.lookup("fields")),
|
||||
value_(readScalar(dict.lookup("value"))),
|
||||
timeStart_(dict.lookupOrDefault("timeStart", -GREAT)),
|
||||
mode_(operatingModeNames.read(dict.lookup("mode")))
|
||||
mode_(operatingModeNames.lookup("mode", dict))
|
||||
{
|
||||
if (fieldNames_.size())
|
||||
{
|
||||
|
||||
@ -37,7 +37,7 @@ SourceFiles
|
||||
#define functionObjects_runTimeControls_equationInitialResidualCondition_H
|
||||
|
||||
#include "runTimeCondition.H"
|
||||
#include "NamedEnum.H"
|
||||
#include "Enum.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
@ -64,7 +64,7 @@ public:
|
||||
omMax //!< Maximum
|
||||
};
|
||||
|
||||
static const NamedEnum<operatingMode, 2> operatingModeNames;
|
||||
static const Enum<operatingMode> operatingModeNames;
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
@ -57,27 +57,19 @@ namespace runTimeControls
|
||||
}
|
||||
}
|
||||
|
||||
template<>
|
||||
const char* Foam::NamedEnum
|
||||
<
|
||||
Foam::functionObjects::runTimeControls::minMaxCondition::modeType,
|
||||
2
|
||||
>::names[] =
|
||||
{
|
||||
"minimum",
|
||||
"maximum"
|
||||
};
|
||||
|
||||
const Foam::NamedEnum
|
||||
const Foam::Enum
|
||||
<
|
||||
Foam
|
||||
::functionObjects
|
||||
::runTimeControls
|
||||
::minMaxCondition
|
||||
::modeType,
|
||||
2
|
||||
::modeType
|
||||
>
|
||||
Foam::functionObjects::runTimeControls::minMaxCondition::modeTypeNames_;
|
||||
Foam::functionObjects::runTimeControls::minMaxCondition::modeTypeNames_
|
||||
{
|
||||
{ modeType::mdMin, "minimum" },
|
||||
{ modeType::mdMax, "maximum" },
|
||||
};
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
@ -92,7 +84,7 @@ Foam::functionObjects::runTimeControls::minMaxCondition::minMaxCondition
|
||||
:
|
||||
runTimeCondition(name, obr, dict, state),
|
||||
functionObjectName_(dict.lookup("functionObject")),
|
||||
mode_(modeTypeNames_.read(dict.lookup("mode"))),
|
||||
mode_(modeTypeNames_.lookup("mode", dict)),
|
||||
fieldNames_(dict.lookup("fields")),
|
||||
value_(readScalar(dict.lookup("value")))
|
||||
{}
|
||||
|
||||
@ -38,7 +38,7 @@ SourceFiles
|
||||
#define functionObjects_runTimeControls_minMaxCondition_H
|
||||
|
||||
#include "runTimeCondition.H"
|
||||
#include "NamedEnum.H"
|
||||
#include "Enum.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
@ -68,7 +68,7 @@ public:
|
||||
mdMax //!< Maximum
|
||||
};
|
||||
|
||||
static const NamedEnum<modeType, 2> modeTypeNames_;
|
||||
static const Enum<modeType> modeTypeNames_;
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
@ -37,7 +37,6 @@ SourceFiles
|
||||
#define functionObjects_runTimeConditions_minTimeStepCondition_H
|
||||
|
||||
#include "runTimeCondition.H"
|
||||
#include "NamedEnum.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
|
||||
@ -45,24 +45,17 @@ namespace functionObjects
|
||||
}
|
||||
}
|
||||
|
||||
template<>
|
||||
const char* Foam::NamedEnum
|
||||
const Foam::Enum
|
||||
<
|
||||
Foam::functionObjects::writeObjects::writeOption,
|
||||
3
|
||||
>::names[] =
|
||||
Foam::functionObjects::writeObjects::writeOption
|
||||
>
|
||||
Foam::functionObjects::writeObjects::writeOptionNames_
|
||||
{
|
||||
"autoWrite",
|
||||
"noWrite",
|
||||
"anyWrite"
|
||||
{ writeOption::AUTO_WRITE, "autoWrite" },
|
||||
{ writeOption::NO_WRITE, "noWrite" },
|
||||
{ writeOption::ANY_WRITE, "anyWrite" },
|
||||
};
|
||||
|
||||
const Foam::NamedEnum
|
||||
<
|
||||
Foam::functionObjects::writeObjects::writeOption,
|
||||
3
|
||||
> Foam::functionObjects::writeObjects::writeOptionNames_;
|
||||
|
||||
|
||||
// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * //
|
||||
|
||||
@ -114,14 +107,12 @@ bool Foam::functionObjects::writeObjects::read(const dictionary& dict)
|
||||
dict.lookup("objects") >> objectNames_;
|
||||
}
|
||||
|
||||
if (dict.found("writeOption"))
|
||||
{
|
||||
writeOption_ = writeOptionNames_.read(dict.lookup("writeOption"));
|
||||
}
|
||||
else
|
||||
{
|
||||
writeOption_ = ANY_WRITE;
|
||||
}
|
||||
writeOption_ = writeOptionNames_.lookupOrDefault
|
||||
(
|
||||
"writeOption",
|
||||
dict,
|
||||
writeOption::ANY_WRITE
|
||||
);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -84,8 +84,8 @@ SourceFiles
|
||||
#define functionObjects_writeObjects_H
|
||||
|
||||
#include "functionObject.H"
|
||||
#include "wordReList.H"
|
||||
#include "NamedEnum.H"
|
||||
#include "wordRes.H"
|
||||
#include "Enum.H"
|
||||
|
||||
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
|
||||
|
||||
@ -119,7 +119,7 @@ public:
|
||||
ANY_WRITE
|
||||
};
|
||||
|
||||
static const NamedEnum<writeOption, 3> writeOptionNames_;
|
||||
static const Enum<writeOption> writeOptionNames_;
|
||||
|
||||
private:
|
||||
|
||||
@ -138,10 +138,10 @@ private:
|
||||
// Private Member Functions
|
||||
|
||||
//- Disallow default bitwise copy construct
|
||||
writeObjects(const writeObjects&);
|
||||
writeObjects(const writeObjects&) = delete;
|
||||
|
||||
//- Disallow default bitwise assignment
|
||||
void operator=(const writeObjects&);
|
||||
void operator=(const writeObjects&) = delete;
|
||||
|
||||
|
||||
public:
|
||||
|
||||
Reference in New Issue
Block a user