OpenFOAM logo
The Open Source CFD Toolbox
  Source Guide OpenCFD Solutions Contact OpenFOAM

regIOobject Class Reference

regIOobject is an abstract class derived from IOobject to handle automatic object registration with the objectRegistry. More...

Inherits Foam::IOobject.

Inherited by DimensionedField< scalar, pointMesh >, DimensionedField< scalar, surfaceMesh >, DimensionedField< scalar, volMesh >, DimensionedField< symmTensor, volMesh >, DimensionedField< tensor, volMesh >, DimensionedField< Type, GeoMesh >, DimensionedField< Type, pointMesh >, DimensionedField< Type, surfaceMesh >, DimensionedField< Type, volMesh >, DimensionedField< vector, pointMesh >, DimensionedField< vector, volMesh >, AverageIOField< Type >, DimensionedField< Type, GeoMesh >, featureEdgeMesh, fieldDictionary, IOdictionary, IOField< Type >, IOList< T >, IOMap< T >, IOPosition< ParticleType >, IOPtrList< T >, MeshObject< Mesh, Type >, objectRegistry, PDRDragModel, polyBoundaryMesh, polyBoundaryMeshEntries, polyTopoChanger, refinementHistory, searchableSurface, SubDimensionedField< Type, GeoMesh >, surfacePatchIOList, surfZoneIOList, topoSet, UniformDimensionedField< Type >, ZoneMesh< ZoneType, MeshType >, IOField< vector >, IOList< face >, IOList< label >, IOPtrList< coordinateSystem >, IOPtrList< injector >, IOPtrList< MRFZone >, IOPtrList< porousZone >, MeshObject< fvMesh, centredCECCellToFaceStencilObject >, MeshObject< fvMesh, centredCFCCellToFaceStencilObject >, MeshObject< fvMesh, centredCFCFaceToCellStencilObject >, MeshObject< fvMesh, centredCPCCellToFaceStencilObject >, MeshObject< fvMesh, centredFECCellToFaceStencilObject >, MeshObject< fvMesh, CentredFitData< Polynomial > >, MeshObject< fvMesh, extendedLeastSquaresVectors >, MeshObject< fvMesh, FitDataType >, MeshObject< fvMesh, leastSquaresVectors >, MeshObject< fvMesh, pureUpwindCFCCellToFaceStencilObject >, MeshObject< fvMesh, quadraticFitSnGradData >, MeshObject< fvMesh, skewCorrectionVectors >, MeshObject< fvMesh, upwindCECCellToFaceStencilObject >, MeshObject< fvMesh, upwindCFCCellToFaceStencilObject >, MeshObject< fvMesh, upwindCPCCellToFaceStencilObject >, MeshObject< fvMesh, upwindFECCellToFaceStencilObject >, MeshObject< fvMesh, UpwindFitData< Polynomial > >, MeshObject< fvMesh, volPointInterpolation >, MeshObject< lduMesh, GAMGAgglomeration >, MeshObject< polyMesh, pointMesh >, ZoneMesh< cellZone, polyMesh >, ZoneMesh< faceZone, polyMesh >, and ZoneMesh< pointZone, polyMesh >.

Collaboration diagram for regIOobject:

List of all members.


Public Member Functions

 TypeName ("regIOobject")
 Runtime type information.
 regIOobject (const IOobject &, const bool isTime=false)
 Construct from IOobject. Optional flag for if IOobject is the.
 regIOobject (const regIOobject &)
 Construct as copy.
 regIOobject (const regIOobject &, bool registerCopy)
 Construct as copy, and transferring registry registration to copy.
virtual ~regIOobject ()
bool checkIn ()
 Add object to registry.
bool checkOut ()
 Remove object from registry.
bool ownedByRegistry () const
 Is this object owned by the registry?
void store ()
 Transfer ownership of this object to its registry.
void release ()
 Release ownership of this object from its registry.
label eventNo () const
 Event number at last update.
labeleventNo ()
 Event number at last update.
bool upToDate (const word &) const
 Am I uptodate with respect to other regIOobjects.
bool upToDate (const word &, const word &) const
bool upToDate (const word &, const word &, const word &) const
bool upToDate (const word &, const word &, const word &, const word &) const
void setUpToDate ()
 Flag me as up to date.
virtual void rename (const word &newName)
 Rename.
IstreamreadStream (const word &)
 Return Istream and check object type against that given.
void close ()
 Close Istream.
virtual bool readData (Istream &)
 Virtual readData function.
virtual bool read ()
 Read object.
virtual bool modified () const
 Return true if the object's file has been modified.
virtual bool readIfModified ()
 Read object if modified.
virtual bool writeData (Ostream &) const =0
 Pure virtual writaData function.
virtual bool writeObject (IOstream::streamFormat, IOstream::versionNumber, IOstream::compressionType) const
 Write using given format, version and compression.
virtual bool write () const
 Write using setting from DB.
void operator= (const IOobject &)

Static Public Member Functions

template<class Type >
static Typestore (Type *)
 Transfer ownership of the given object pointer to its registry.
template<class Type >
static Typestore (autoPtr< Type > &)
 Transfer ownership of the given object pointer to its registry.

Static Public Attributes

static int fileModificationSkew

Detailed Description

regIOobject is an abstract class derived from IOobject to handle automatic object registration with the objectRegistry.

Source files

Definition at line 50 of file regIOobject.H.


Constructor & Destructor Documentation

regIOobject ( const IOobject io,
const bool  isTime = false 
)

Construct from IOobject. Optional flag for if IOobject is the.

top level regIOobject.

Definition at line 35 of file regIOobject.C.

regIOobject ( const regIOobject rio  ) 

Construct as copy.

Definition at line 58 of file regIOobject.C.

References regIOobject::checkIn().

Here is the call graph for this function:

regIOobject ( const regIOobject rio,
bool  registerCopy 
)

Construct as copy, and transferring registry registration to copy.

if registerCopy is true

Definition at line 73 of file regIOobject.C.

~regIOobject (  )  [virtual]

Definition at line 93 of file regIOobject.C.


Member Function Documentation

TypeName ( "regIOobject"   ) 

Runtime type information.

bool checkIn (  ) 

Add object to registry.

Definition at line 120 of file regIOobject.C.

References regIOobject::checkOut().

Referenced by regIOobject::operator=(), and regIOobject::regIOobject().

Here is the call graph for this function:

Here is the caller graph for this function:

bool checkOut (  ) 

Remove object from registry.

Definition at line 155 of file regIOobject.C.

Referenced by regIOobject::checkIn(), and objectRegistry::names().

Here is the caller graph for this function:

bool ownedByRegistry (  )  const [inline]

Is this object owned by the registry?

Definition at line 20 of file regIOobjectI.H.

void store (  )  [inline]

Transfer ownership of this object to its registry.

Definition at line 26 of file regIOobjectI.H.

Referenced by fieldAverage::addMeanField().

Here is the caller graph for this function:

Type & store ( Type tPtr  )  [inline, static]

Transfer ownership of the given object pointer to its registry.

and return reference to object.

Definition at line 33 of file regIOobjectI.H.

Type & store ( autoPtr< Type > &  atPtr  )  [inline, static]

Transfer ownership of the given object pointer to its registry.

and return reference to object.

Definition at line 49 of file regIOobjectI.H.

void release (  )  [inline]

Release ownership of this object from its registry.

Definition at line 68 of file regIOobjectI.H.

Foam::label eventNo (  )  const [inline]

Event number at last update.

Definition at line 74 of file regIOobjectI.H.

Foam::label & eventNo (  )  [inline]

Event number at last update.

Definition at line 79 of file regIOobjectI.H.

bool upToDate ( const word a  )  const

Am I uptodate with respect to other regIOobjects.

Definition at line 167 of file regIOobject.C.

References objectRegistry::checkOut(), and IOobject::db().

Here is the call graph for this function:

bool upToDate ( const word a,
const word b 
) const

Definition at line 180 of file regIOobject.C.

bool upToDate ( const word a,
const word b,
const word c 
) const

Definition at line 198 of file regIOobject.C.

bool upToDate ( const word a,
const word b,
const word c,
const word d 
) const

Definition at line 221 of file regIOobject.C.

void setUpToDate (  ) 

Flag me as up to date.

Definition at line 246 of file regIOobject.C.

Referenced by GeometricField< Type, PatchField, GeoMesh >::needReference(), and GeometricField< Type, PatchField, GeoMesh >::storeOldTimes().

Here is the caller graph for this function:

void rename ( const word newName  )  [virtual]

Rename.

Reimplemented from IOobject.

Reimplemented in objectRegistry.

Definition at line 253 of file regIOobject.C.

References IOobject::db(), and objectRegistry::getEvent().

Referenced by reuseTmpTmpGeometricField< TypeR, Type1, Type12, TypeR, PatchField, GeoMesh >::New(), and reuseTmpTmpGeometricField< TypeR, TypeR, TypeR, Type2, PatchField, GeoMesh >::New().

Here is the call graph for this function:

Here is the caller graph for this function:

bool readData ( Istream  )  [virtual]

Virtual readData function.

Must be defined in derived types for which re-reading is required

Reimplemented in refinementHistory, featureEdgeMesh, porousZones, and IOdictionary.

Definition at line 130 of file regIOobjectRead.C.

Referenced by regIOobject::modified().

Here is the caller graph for this function:

bool read (  )  [virtual]

Read object.

Reimplemented in engineTime, timeActivatedExplicitCellSource, timeActivatedExplicitMulticomponentPointSource, timeActivatedExplicitSource, rpm, SRFModel, fvSchemes, IOOutputFilter< OutputFilter >, Time, solution, tolerances, basicThermo, ePsiThermo< MixtureType >, hPsiThermo< MixtureType >, hRhoThermo< MixtureType >, fvDOM, noRadiation, P1, radiationModel, hhuMixtureThermo< MixtureType >, hPsiMixtureThermo< MixtureType >, hRhoMixtureThermo< MixtureType >, twoPhaseMixture, singlePhaseTransportModel, transportModel, DeardorffDiffStress, dynOneEqEddy, GenEddyVisc, GenSGSStress, LESModel, lowReOneEqEddy, oneEqEddy, Smagorinsky, SpalartAllmaras, kEpsilon, kOmegaSST, laminar, LaunderGibsonRSTM, LaunderSharmaKE, LRR, RASModel, realizableKE, RNGkEpsilon, SpalartAllmaras, DeardorffDiffStress, dynMixedSmagorinsky, dynOneEqEddy, dynSmagorinsky, GenEddyVisc, GenSGSStress, kOmegaSSTSAS, laminar, LESModel, locDynOneEqEddy, LRRDiffStress, mixedSmagorinsky, oneEqEddy, scaleSimilarity, Smagorinsky, Smagorinsky2, SpalartAllmaras, SpalartAllmarasIDDES, spectEddyVisc, kEpsilon, kOmega, kOmegaSST, LamBremhorstKE, laminar, LaunderGibsonRSTM, LaunderSharmaKE, LienCubicKE, LienCubicKELowRe, LienLeschzinerLowRe, LRR, NonlinearKEShih, qZeta, RASModel, realizableKE, RNGkEpsilon, SpalartAllmaras, PDRkEpsilon, phaseChangeTwoPhaseMixture, and multiphaseMixture.

Definition at line 136 of file regIOobjectRead.C.

Referenced by IOPtrList< T >::IOPtrList().

Here is the caller graph for this function:

bool modified (  )  const [virtual]

Return true if the object's file has been modified.

Reimplemented in objectRegistry.

Definition at line 144 of file regIOobjectRead.C.

References regIOobject::close(), regIOobject::readData(), and Foam::type().

Here is the call graph for this function:

bool readIfModified (  )  [virtual]

Read object if modified.

Reimplemented in objectRegistry.

Definition at line 154 of file regIOobjectRead.C.

References regIOobject::fileModificationSkew, IOobject::filePath(), and Foam::lastModified().

Here is the call graph for this function:

virtual bool writeData ( Ostream  )  const [pure virtual]

Pure virtual writaData function.

Must be defined in derived types

Implemented in refinementHistory, polyTopoChanger, featureEdgeMesh, AverageIOField< Type >, IOPosition< ParticleType >, searchableBox, searchableCylinder, searchablePlane, searchablePlate, searchableSphere, searchableSurfaceCollection, searchableSurfaceWithGaps, triSurfaceMesh, topoSet, IOdictionary, IOField< Type >, IOList< T >, IOMap< T >, IOPtrList< T >, objectRegistry, DimensionedField< Type, GeoMesh >, GeometricField< Type, PatchField, GeoMesh >, UniformDimensionedField< Type >, MeshObject< Mesh, Type >, polyBoundaryMesh, polyBoundaryMeshEntries, ZoneMesh< ZoneType, MeshType >, surfZoneIOList, surfacePatchIOList, fieldDictionary, PDRDragModel, IOField< vector >, IOList< label >, IOList< face >, IOPtrList< MRFZone >, IOPtrList< injector >, IOPtrList< coordinateSystem >, IOPtrList< porousZone >, DimensionedField< scalar, volMesh >, DimensionedField< scalar, pointMesh >, DimensionedField< symmTensor, volMesh >, DimensionedField< vector, pointMesh >, DimensionedField< Type, GeoMesh >, DimensionedField< Type, volMesh >, DimensionedField< scalar, surfaceMesh >, DimensionedField< vector, volMesh >, DimensionedField< Type, pointMesh >, DimensionedField< Type, surfaceMesh >, DimensionedField< tensor, volMesh >, GeometricField< symmTensor, fvPatchField, volMesh >, GeometricField< tensor, fvPatchField, volMesh >, GeometricField< scalar, fvPatchField, volMesh >, GeometricField< scalar, fvsPatchField, surfaceMesh >, GeometricField< Type, fvsPatchField, surfaceMesh >, GeometricField< Type, PatchField, GeoMesh >, GeometricField< scalar, pointPatchField, pointMesh >, GeometricField< vector, fvPatchField, volMesh >, GeometricField< Type, pointPatchField, pointMesh >, GeometricField< vector, pointPatchField, pointMesh >, GeometricField< Type, fvPatchField, volMesh >, MeshObject< fvMesh, centredCFCFaceToCellStencilObject >, MeshObject< fvMesh, volPointInterpolation >, MeshObject< fvMesh, leastSquaresVectors >, MeshObject< fvMesh, upwindCFCCellToFaceStencilObject >, MeshObject< fvMesh, skewCorrectionVectors >, MeshObject< fvMesh, quadraticFitSnGradData >, MeshObject< fvMesh, pureUpwindCFCCellToFaceStencilObject >, MeshObject< fvMesh, FitDataType >, MeshObject< fvMesh, centredFECCellToFaceStencilObject >, MeshObject< polyMesh, pointMesh >, MeshObject< fvMesh, extendedLeastSquaresVectors >, MeshObject< lduMesh, GAMGAgglomeration >, MeshObject< fvMesh, UpwindFitData< Polynomial > >, MeshObject< fvMesh, CentredFitData< Polynomial > >, MeshObject< fvMesh, centredCFCCellToFaceStencilObject >, MeshObject< fvMesh, upwindCPCCellToFaceStencilObject >, MeshObject< fvMesh, upwindCECCellToFaceStencilObject >, MeshObject< fvMesh, centredCECCellToFaceStencilObject >, MeshObject< fvMesh, upwindFECCellToFaceStencilObject >, MeshObject< fvMesh, centredCPCCellToFaceStencilObject >, ZoneMesh< faceZone, polyMesh >, ZoneMesh< pointZone, polyMesh >, and ZoneMesh< cellZone, polyMesh >.

Referenced by searchableSurfaceWithGaps::writeData(), and regIOobject::writeObject().

Here is the caller graph for this function:

bool write (  )  const [virtual]

Write using setting from DB.

Reimplemented in fvMesh, and IOPosition< ParticleType >.

Definition at line 119 of file regIOobjectWrite.C.

References Foam::lastModified(), and IOobject::objectPath().

Referenced by Foam::MapConsistentVolFields(), Foam::MapLagrangianFields(), Foam::MapVolFields(), Time::writeAndEnd(), and magGrad::writeMagGradField().

Here is the call graph for this function:

Here is the caller graph for this function:

void operator= ( const IOobject io  ) 

Reimplemented from IOobject.

Definition at line 269 of file regIOobject.C.

References regIOobject::checkIn().

Here is the call graph for this function:


Member Data Documentation

int fileModificationSkew [static]

Definition at line 91 of file regIOobject.H.

Referenced by regIOobject::readIfModified().


The documentation for this class was generated from the following files:
Copyright © 2000-2009 OpenCFD Ltd