Loading...
Searching...
No Matches
IOobjectOption Class Reference

A simple container of IOobject preferences. Can also be used for general handling of read/no-read/read-if-present logic outside of an IOobject. More...

#include <IOobjectOption.H>

Inheritance diagram for IOobjectOption:

Public Types

enum  readOption : unsigned char {
  NO_READ = 0 , MUST_READ = 0x1 , READ_MODIFIED = 0x3 , MUST_READ_IF_MODIFIED = 0x3 ,
  LAZY_READ = 0x4 , READ_IF_PRESENT = 0x4
}
 Enumeration defining read preferences. More...
enum  writeOption : unsigned char { NO_WRITE = 0 , AUTO_WRITE = 0x10 }
 Enumeration defining write preferences. More...
enum  registerOption : unsigned char { NO_REGISTER = 0 , REGISTER = 1 , LEGACY_REGISTER = 2 }
 Enumeration for use with registerObject(). Values map to bool (false/true). More...
enum class  Layout : unsigned char { regular , global }
 The layout of the case structure. More...

Public Member Functions

constexpr IOobjectOption (readOption rOpt=readOption::NO_READ, writeOption wOpt=writeOption::NO_WRITE, registerOption registerObject=registerOption::REGISTER, bool globalObject=false) noexcept
 Default construct (NO_READ, NO_WRITE, REGISTER, non-global) or construct with specified options.
constexpr IOobjectOption (readOption rOpt, registerOption registerObject=registerOption::REGISTER, bool globalObject=false) noexcept
 Construct NO_WRITE with specified read/register options.
constexpr IOobjectOption (writeOption wOpt, registerOption registerObject=registerOption::REGISTER, bool globalObject=false) noexcept
 Construct NO_READ with specified write/register options.
constexpr IOobjectOption (registerOption registerObject, bool globalObject=false) noexcept
 Construct (NO_READ, NO_WRITE) with specified register option.
constexpr IOobjectOption (readOption rOpt, writeOption wOpt, bool registerObject, bool globalObject=false) noexcept
 Construct from components with specified register option as bool.
constexpr IOobjectOption (bool registerObject, bool globalObject=false) noexcept
 Construct (NO_READ, NO_WRITE) with specified register option as bool.
readOption readOpt () const noexcept
 Get the read option.
readOption readOpt (readOption opt) noexcept
 Set the read option.
writeOption writeOpt () const noexcept
 Get the write option.
writeOption writeOpt (writeOption opt) noexcept
 Set the write option.
bool registerObject () const noexcept
 Should objects created with this IOobject be registered?
bool registerObject (bool on) noexcept
 Change registration preference.
bool globalObject () const noexcept
 True if object is treated the same for all processors.
bool globalObject (bool on) noexcept
 Change global-object status.
bool isAnyRead () const noexcept
 True if any reading may be required (ie, != NO_READ).
bool isReadRequired () const noexcept
 True if (MUST_READ | READ_MODIFIED) bits are set.
bool isReadOptional () const noexcept
 True if (LAZY_READ) bits are set [same as READ_IF_PRESENT].
readOptionreadOpt () noexcept
 Access to the read option.
writeOptionwriteOpt () noexcept
 Access to the write option.
bool & registerObject () noexcept
 Access to the register object option.
bool & globalObject () noexcept
 Access to the global object option.

Static Public Member Functions

static bool isAnyRead (readOption opt) noexcept
 True if any reading may be required (ie, != NO_READ).
static bool isReadRequired (readOption opt) noexcept
 True if (MUST_READ | READ_MODIFIED) bits are set.
static bool isReadOptional (readOption opt) noexcept
 True if (LAZY_READ) bits are set [same as READ_IF_PRESENT].
static readOption lazierRead (readOption opt) noexcept
 Downgrade readOption optional (LAZY_READ), leaves NO_READ intact.

Detailed Description

A simple container of IOobject preferences. Can also be used for general handling of read/no-read/read-if-present logic outside of an IOobject.

See also
Foam::IOobject

Definition at line 45 of file IOobjectOption.H.

Member Enumeration Documentation

◆ readOption

enum readOption : unsigned char

Enumeration defining read preferences.

Lowest bit encodes 'must read'. Possible (future) named variants (none | normal | modified | lazy)

Enumerator
NO_READ 

Nothing to be read.

MUST_READ 

Reading required.

READ_MODIFIED 

Reading required, file watched for runTime modification [identical to MUST_READ_IF_MODIFIED]

MUST_READ_IF_MODIFIED 

Reading required, file watched for runTime modification [identical to READ_MODIFIED]

LAZY_READ 

Reading is optional [identical to READ_IF_PRESENT].

READ_IF_PRESENT 

Reading is optional [identical to LAZY_READ].

Definition at line 57 of file IOobjectOption.H.

◆ writeOption

enum writeOption : unsigned char

Enumeration defining write preferences.

Enumerator
NO_WRITE 

Ignore writing from objectRegistry::writeObject().

AUTO_WRITE 

Automatically write from objectRegistry::writeObject().

Definition at line 83 of file IOobjectOption.H.

◆ registerOption

enum registerOption : unsigned char

Enumeration for use with registerObject(). Values map to bool (false/true).

Enumerator
NO_REGISTER 

Do not request registration (bool: false).

REGISTER 

Request registration (bool: true).

LEGACY_REGISTER 

Legacy/default registration request (bool: true).

Definition at line 96 of file IOobjectOption.H.

◆ Layout

enum class Layout : unsigned char
strong

The layout of the case structure.

Enumerator
regular 

Regular case layout, eg processor-local locations.

global 

Global case layout (serial locations).

Definition at line 111 of file IOobjectOption.H.

Constructor & Destructor Documentation

◆ IOobjectOption() [1/6]

IOobjectOption ( readOption rOpt = readOption::NO_READ,
writeOption wOpt = writeOption::NO_WRITE,
registerOption registerObject = registerOption::REGISTER,
bool globalObject = false )
inlineconstexprnoexcept

Default construct (NO_READ, NO_WRITE, REGISTER, non-global) or construct with specified options.

Definition at line 152 of file IOobjectOption.H.

References globalObject(), NO_READ, NO_WRITE, Foam::noexcept, REGISTER, and registerObject().

Referenced by IOobject::IOobject(), IOobject::IOobject(), IOobject::IOobject(), IOobject::IOobject(), IOobject::IOobject(), IOobject::IOobject(), IOobject::IOobject(), IOobject::IOobject(), and IOobject::~IOobject().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IOobjectOption() [2/6]

IOobjectOption ( readOption rOpt,
registerOption registerObject = registerOption::REGISTER,
bool globalObject = false )
inlineconstexprnoexcept

Construct NO_WRITE with specified read/register options.

Definition at line 169 of file IOobjectOption.H.

References globalObject(), NO_WRITE, Foam::noexcept, REGISTER, and registerObject().

Here is the call graph for this function:

◆ IOobjectOption() [3/6]

IOobjectOption ( writeOption wOpt,
registerOption registerObject = registerOption::REGISTER,
bool globalObject = false )
inlineconstexprnoexcept

Construct NO_READ with specified write/register options.

Definition at line 185 of file IOobjectOption.H.

References globalObject(), NO_READ, Foam::noexcept, REGISTER, and registerObject().

Here is the call graph for this function:

◆ IOobjectOption() [4/6]

IOobjectOption ( registerOption registerObject,
bool globalObject = false )
inlineconstexprnoexcept

Construct (NO_READ, NO_WRITE) with specified register option.

Definition at line 201 of file IOobjectOption.H.

References globalObject(), NO_READ, NO_WRITE, Foam::noexcept, and registerObject().

Here is the call graph for this function:

◆ IOobjectOption() [5/6]

IOobjectOption ( readOption rOpt,
writeOption wOpt,
bool registerObject,
bool globalObject = false )
inlineconstexprnoexcept

Construct from components with specified register option as bool.

Definition at line 217 of file IOobjectOption.H.

References globalObject(), NO_REGISTER, Foam::noexcept, REGISTER, and registerObject().

Here is the call graph for this function:

◆ IOobjectOption() [6/6]

IOobjectOption ( bool registerObject,
bool globalObject = false )
inlineexplicitconstexprnoexcept

Construct (NO_READ, NO_WRITE) with specified register option as bool.

Definition at line 235 of file IOobjectOption.H.

References globalObject(), NO_READ, NO_REGISTER, NO_WRITE, Foam::noexcept, REGISTER, and registerObject().

Here is the call graph for this function:

Member Function Documentation

◆ readOpt() [1/3]

readOption readOpt ( ) const
inlinenoexcept

Get the read option.

Definition at line 253 of file IOobjectOption.H.

References Foam::noexcept.

Referenced by regIOobject::addWatch(), regIOobject::addWatch(), unwatchedIOdictionary::addWatch(), unwatchedIOdictionary::addWatch(), columnFvMesh::columnFvMesh(), decomposedBlockData::decomposedBlockData(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), faMesh::faMesh(), faMesh::faMesh(), fvMesh::fvMesh(), fvMesh::fvMesh(), IOobject::IOobject(), voxelMeshSearch::makeMesh(), Foam::MapConsistentVolFields(), Foam::MapVolFields(), fvMeshTools::newMesh(), IOobject::operator=(), pointBoundaryMesh::pointBoundaryMesh(), radiationModel::radiationModel(), radiativeIntensityRay::radiativeIntensityRay(), CompactIOField< T >::readContents(), CompactIOList< T >::readContents(), GlobalIOField< Type >::readContents(), GlobalIOList< Type >::readContents(), IOdictionary::readContents(), IOField< Type >::readContents(), IOList< T >::readContents(), IOMap< T >::readContents(), IOPtrList< T >::readContents(), localIOdictionary::readContents(), rawIOField< Type >::readContents(), CompactIOField< T >::readContentsSize(), CompactIOList< T >::readContentsSize(), IOField< Type >::readContentsSize(), IOList< T >::readContentsSize(), waveModel::readDict(), schemesLookup::schemesLookup(), schemesLookup::schemesLookup(), searchableRotatedBox::searchableRotatedBox(), SimplifiedDynamicFvMesh< DynamicMeshType >::SimplifiedDynamicFvMesh(), singleCellFvMesh::singleCellFvMesh(), singleCellFvMesh::singleCellFvMesh(), singleCellFvMesh::singleCellFvMesh(), solution::solution(), solution::solution(), surfMesh::surfMesh(), hexRef8Data::sync(), Time::Time(), Time::Time(), Time::Time(), triSurfaceMesh::triSurfaceMesh(), triSurfaceMesh::triSurfaceMesh(), triSurfaceMesh::triSurfaceMesh(), triSurfaceMesh::triSurfaceMesh(), triSurfaceMesh::triSurfaceMesh(), and IOobject::warnNoRereading().

◆ readOpt() [2/3]

readOption readOpt ( readOption opt)
inlinenoexcept

Set the read option.

Returns
the previous value

Definition at line 258 of file IOobjectOption.H.

◆ writeOpt() [1/3]

◆ writeOpt() [2/3]

writeOption writeOpt ( writeOption opt)
inlinenoexcept

Set the write option.

Returns
the previous value

Definition at line 273 of file IOobjectOption.H.

◆ registerObject() [1/3]

bool registerObject ( ) const
inlinenoexcept

Should objects created with this IOobject be registered?

Definition at line 283 of file IOobjectOption.H.

References Foam::noexcept.

Referenced by AttouFerschneider::AttouFerschneider(), Beetstra::Beetstra(), constantSurfaceTensionCoefficient::constantSurfaceTensionCoefficient(), constantVirtualMassCoefficient::constantVirtualMassCoefficient(), dragModel::declareRunTimeSelectionTable(), surfaceTensionModel::declareRunTimeSelectionTable(), virtualMassModel::declareRunTimeSelectionTable(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), dragModel::dragModel(), dragModel::dragModel(), Ergun::Ergun(), Gibilaro::Gibilaro(), GidaspowErgunWenYu::GidaspowErgunWenYu(), GidaspowSchillerNaumann::GidaspowSchillerNaumann(), IOobject::IOobject(), IOobject::IOobject(), IOobject::IOobject(), IOobject::IOobject(), IOobjectOption(), IOobjectOption(), IOobjectOption(), IOobjectOption(), IOobjectOption(), IOobjectOption(), IshiiZuber::IshiiZuber(), Lain::Lain(), Lamb::Lamb(), fvMeshTools::newMesh(), noVirtualMass::noVirtualMass(), GeometricField< Type, PatchField, GeoMesh >::oldTime(), regIOobject::operator=(), regIOobject::regIOobject(), regIOobject::regIOobject(), regIOobject::rename(), SchillerNaumann::SchillerNaumann(), segregated::segregated(), surfaceTensionModel::surfaceTensionModel(), SyamlalOBrien::SyamlalOBrien(), Tenneti::Tenneti(), TomiyamaAnalytic::TomiyamaAnalytic(), TomiyamaCorrelated::TomiyamaCorrelated(), TomiyamaKataokaZunSakaguchi::TomiyamaKataokaZunSakaguchi(), blockMesh::topology(), AttouFerschneider::TypeName(), Beetstra::TypeName(), Ergun::TypeName(), Gibilaro::TypeName(), GidaspowErgunWenYu::TypeName(), GidaspowSchillerNaumann::TypeName(), IshiiZuber::TypeName(), Lain::TypeName(), SchillerNaumann::TypeName(), segregated::TypeName(), SyamlalOBrien::TypeName(), Tenneti::TypeName(), TomiyamaAnalytic::TypeName(), TomiyamaCorrelated::TypeName(), TomiyamaKataokaZunSakaguchi::TypeName(), WenYu::TypeName(), constantSurfaceTensionCoefficient::TypeName(), constantVirtualMassCoefficient::TypeName(), Lamb::TypeName(), noVirtualMass::TypeName(), virtualMassModel::virtualMassModel(), WenYu::WenYu(), and IOobject::~IOobject().

◆ registerObject() [2/3]

bool registerObject ( bool on)
inlinenoexcept

Change registration preference.

Returns
previous value

Definition at line 288 of file IOobjectOption.H.

◆ globalObject() [1/3]

◆ globalObject() [2/3]

bool globalObject ( bool on)
inlinenoexcept

Change global-object status.

Returns
previous value

Definition at line 303 of file IOobjectOption.H.

◆ isAnyRead() [1/2]

◆ isAnyRead() [2/2]

bool isAnyRead ( ) const
inlinenoexcept

True if any reading may be required (ie, != NO_READ).

Definition at line 324 of file IOobjectOption.H.

References NO_READ, and Foam::noexcept.

◆ isReadRequired() [1/2]

◆ isReadRequired() [2/2]

◆ isReadOptional() [1/2]

bool isReadOptional ( readOption opt)
inlinestaticnoexcept

True if (LAZY_READ) bits are set [same as READ_IF_PRESENT].

Definition at line 348 of file IOobjectOption.H.

References LAZY_READ.

Referenced by Field< Type >::Field(), topoSet::readIOcontents(), mixedFaPatchField< Type >::readMixedEntries(), and mixedFvPatchField< Type >::readMixedEntries().

Here is the caller graph for this function:

◆ isReadOptional() [2/2]

◆ lazierRead()

readOption lazierRead ( readOption opt)
inlinestaticnoexcept

Downgrade readOption optional (LAZY_READ), leaves NO_READ intact.

Definition at line 364 of file IOobjectOption.H.

References LAZY_READ, and NO_READ.

Referenced by coordinateSystem::assign(), distributedTriSurfaceMesh::distributedTriSurfaceMesh(), and distributedTriSurfaceMesh::distributedTriSurfaceMesh().

Here is the caller graph for this function:

◆ readOpt() [3/3]

readOption & readOpt ( )
inlinenoexcept

Access to the read option.

Deprecated
(2021-03) - use readOpt(readOption)

Definition at line 377 of file IOobjectOption.H.

References Foam::noexcept.

◆ writeOpt() [3/3]

writeOption & writeOpt ( )
inlinenoexcept

Access to the write option.

Deprecated
(2021-03) - use writeOpt(writeOption)

Definition at line 384 of file IOobjectOption.H.

References Foam::noexcept.

◆ registerObject() [3/3]

bool & registerObject ( )
inlinenoexcept

Access to the register object option.

Deprecated
(2021-03) - use registerObject(bool)

Definition at line 391 of file IOobjectOption.H.

References Foam::noexcept.

◆ globalObject() [3/3]

bool & globalObject ( )
inlinenoexcept

Access to the global object option.

Deprecated
(2021-03) - use globalObject(bool)

Definition at line 398 of file IOobjectOption.H.

References Foam::noexcept.


The documentation for this class was generated from the following file: