FreeFOAM The Cross-Platform CFD Toolkit
Hosted by SourceForge:
Get FreeFOAM at SourceForge.net.
            Fast, secure and Free Open Source software downloads

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

#include <OpenFOAM/regIOobject.H>


Detailed Description

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

Source files

Definition at line 55 of file regIOobject.H.

Inherits Foam::IOobject.

Inherited by DimensionedField< scalar, pointMesh >, DimensionedField< scalar, surfaceMesh >, DimensionedField< scalar, volMesh >, DimensionedField< symmTensor, volMesh >, DimensionedField< tensor, volMesh >, 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< kinematicParcelInjectionData >, IOList< label >, IOList< reactingMultiphaseParcelInjectionData >, IOList< reactingParcelInjectionData >, IOPtrList< coordinateSystem >, IOPtrList< injector >, IOPtrList< MRFZone >, IOPtrList< porousZone >, IOPtrList< TimeActivatedExplicitSource< Type > >, 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.
label &  eventNo ()
 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.
Istream &  readStream (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 Type &  store (Type *)
 Transfer ownership of the given object pointer to its registry.
template<class Type >
static Type &  store (autoPtr< Type > &)
 Transfer ownership of the given object pointer to its registry.

Static Public Attributes

static int  fileModificationSkew

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 43 of file regIOobject.C.

References regIOobject::checkIn(), and IOobject::registerObject().

regIOobject ( const regIOobject &   rio  )

Construct as copy.

Definition at line 66 of file regIOobject.C.

regIOobject ( const regIOobject &   rio,
bool   registerCopy  
)

Construct as copy, and transferring registry registration to copy.

if registerCopy is true

Definition at line 81 of file regIOobject.C.

References regIOobject::checkIn(), and regIOobject::checkOut().

~regIOobject (  ) [virtual]

Definition at line 101 of file regIOobject.C.

References Foam::endl(), Foam::Info, Foam::name(), and Foam::type().


Member Function Documentation

TypeName ( "regIOobject"    )

Runtime type information.

bool checkIn (  )

Add object to registry.

Definition at line 128 of file regIOobject.C.

References Foam::abort(), polyMesh::defaultRegion, Foam::endl(), Foam::FatalError, FatalErrorIn, Foam::name(), and WarningIn.

Referenced by regIOobject::regIOobject().

bool checkOut (  )

Remove object from registry.

Definition at line 163 of file regIOobject.C.

Referenced by MeshObject< Mesh, Type >::Delete(), regIOobject::regIOobject(), and objectRegistry::~objectRegistry().

bool ownedByRegistry (  ) const [inline]

Is this object owned by the registry?

Definition at line 28 of file regIOobjectI.H.

Referenced by objectRegistry::checkOut().

void store (  ) [inline]

Transfer ownership of this object to its registry.

Definition at line 34 of file regIOobjectI.H.

Referenced by coordinateSystems::New(), and triSurfaceMesh::setField().

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

Transfer ownership of the given object pointer to its registry.

and return reference to object.

Definition at line 41 of file regIOobjectI.H.

References Foam::abort(), Foam::FatalError, and FatalErrorIn.

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 57 of file regIOobjectI.H.

References Foam::abort(), Foam::FatalError, FatalErrorIn, and autoPtr< T >::ptr().

void release (  ) [inline]

Release ownership of this object from its registry.

Definition at line 76 of file regIOobjectI.H.

Foam::label eventNo (  ) const [inline]

Event number at last update.

Definition at line 82 of file regIOobjectI.H.

Referenced by objectRegistry::getEvent().

Foam::label & eventNo (  ) [inline]

Event number at last update.

Definition at line 87 of file regIOobjectI.H.

bool upToDate ( const word &   a  ) const

Am I uptodate with respect to other regIOobjects.

Definition at line 175 of file regIOobject.C.

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

Definition at line 188 of file regIOobject.C.

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

Definition at line 206 of file regIOobject.C.

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

Definition at line 229 of file regIOobject.C.

void setUpToDate (  )

Flag me as up to date.

Definition at line 254 of file regIOobject.C.

bool readData ( Istream &    ) [virtual]

Virtual readData function.

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

Reimplemented in refinementHistory, featureEdgeMesh, TimeActivatedExplicitSourceList< Type >, porousZones, and IOdictionary.

Definition at line 138 of file regIOobjectRead.C.

bool read (  ) [virtual]

Read object.

Reimplemented in engineTime, IObasicSourceList, rpm, SRFModel, fvSchemes, IOOutputFilter< OutputFilter >, Time, solution, tolerances, basicThermo, ePsiThermo< MixtureType >, hPsiThermo< MixtureType >, hsPsiThermo< MixtureType >, hRhoThermo< MixtureType >, hsRhoThermo< MixtureType >, fvDOM, noRadiation, P1, radiationModel, hhuMixtureThermo< MixtureType >, hPsiMixtureThermo< MixtureType >, hsPsiMixtureThermo< MixtureType >, hRhoMixtureThermo< MixtureType >, hsRhoMixtureThermo< MixtureType >, twoPhaseMixture, singlePhaseTransportModel, transportModel, DeardorffDiffStress, dynOneEqEddy, GenEddyVisc, GenSGSStress, LESModel, lowReOneEqEddy, oneEqEddy, Smagorinsky, SpalartAllmaras, kEpsilon, kOmegaSST, laminar, LaunderGibsonRSTM, LaunderSharmaKE, LRR, RASModel, realizableKE, RNGkEpsilon, SpalartAllmaras, DeardorffDiffStress, dynOneEqEddy, GenEddyVisc, GenSGSStress, homogeneousDynSmagorinsky, kOmegaSSTSAS, laminar, incompressible::LESModel, locDynOneEqEddy, LRRDiffStress, mixedSmagorinsky, oneEqEddy, scaleSimilarity, Smagorinsky, Smagorinsky2, SpalartAllmaras, SpalartAllmarasIDDES, spectEddyVisc, kEpsilon, kOmega, kOmegaSST, LamBremhorstKE, laminar, LaunderGibsonRSTM, LaunderSharmaKE, LienCubicKE, LienCubicKELowRe, LienLeschzinerLowRe, LRR, NonlinearKEShih, qZeta, incompressible::RASModel, realizableKE, RNGkEpsilon, SpalartAllmaras, PDRkEpsilon, threePhaseMixture, Kunz, Merkle, phaseChangeTwoPhaseMixture, SchnerrSauer, and multiphaseMixture.

Definition at line 144 of file regIOobjectRead.C.

References Foam::type().

Referenced by IOPtrList< T >::IOPtrList(), incompressible::RASModel::read(), RASModel::read(), incompressible::LESModel::read(), LESModel::read(), singlePhaseTransportModel::read(), radiationModel::read(), basicThermo::read(), tolerances::read(), solution::read(), fvSchemes::read(), SRFModel::read(), and IObasicSourceList::read().

bool modified (  ) const [virtual]

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

Reimplemented in objectRegistry.

Definition at line 152 of file regIOobjectRead.C.

References Foam::lastModified().

bool readIfModified (  ) [virtual]

Read object if modified.

Reimplemented in objectRegistry.

Definition at line 162 of file regIOobjectRead.C.

References Foam::endl(), Foam::Info, Foam::lastModified(), Foam::name(), Foam::nl, Pstream::parRun(), Foam::reduce(), and WarningIn.

virtual bool writeData ( Ostream &    ) const [pure virtual]

Pure virtual writaData function.

Must be defined in derived types

Implemented in refinementHistory, polyTopoChanger, featureEdgeMesh, TimeActivatedExplicitSourceList< Type >, 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< reactingParcelInjectionData >, IOList< reactingMultiphaseParcelInjectionData >, IOList< face >, IOList< kinematicParcelInjectionData >, IOPtrList< coordinateSystem >, IOPtrList< injector >, IOPtrList< MRFZone >, IOPtrList< porousZone >, IOPtrList< TimeActivatedExplicitSource< Type > >, DimensionedField< tensor, volMesh >, DimensionedField< scalar, volMesh >, DimensionedField< vector, pointMesh >, DimensionedField< scalar, pointMesh >, DimensionedField< Type, volMesh >, DimensionedField< symmTensor, volMesh >, DimensionedField< scalar, surfaceMesh >, DimensionedField< vector, volMesh >, DimensionedField< Type, surfaceMesh >, DimensionedField< Type, pointMesh >, GeometricField< symmTensor, fvPatchField, volMesh >, GeometricField< tensor, fvPatchField, volMesh >, GeometricField< scalar, fvPatchField, volMesh >, GeometricField< scalar, fvsPatchField, surfaceMesh >, GeometricField< Type, fvsPatchField, surfaceMesh >, GeometricField< Type, pointPatchField, pointMesh >, GeometricField< scalar, pointPatchField, pointMesh >, GeometricField< vector, fvPatchField, volMesh >, GeometricField< vector, pointPatchField, pointMesh >, GeometricField< Type, fvPatchField, volMesh >, MeshObject< polyMesh, pointMesh >, MeshObject< fvMesh, UpwindFitData< Polynomial > >, MeshObject< fvMesh, CentredFitData< Polynomial > >, MeshObject< fvMesh, skewCorrectionVectors >, MeshObject< fvMesh, centredFECCellToFaceStencilObject >, MeshObject< fvMesh, quadraticFitSnGradData >, MeshObject< fvMesh, centredCFCFaceToCellStencilObject >, MeshObject< fvMesh, upwindFECCellToFaceStencilObject >, MeshObject< fvMesh, pureUpwindCFCCellToFaceStencilObject >, MeshObject< fvMesh, upwindCPCCellToFaceStencilObject >, MeshObject< fvMesh, upwindCECCellToFaceStencilObject >, MeshObject< fvMesh, centredCPCCellToFaceStencilObject >, MeshObject< fvMesh, upwindCFCCellToFaceStencilObject >, MeshObject< fvMesh, leastSquaresVectors >, MeshObject< fvMesh, centredCFCCellToFaceStencilObject >, MeshObject< fvMesh, centredCECCellToFaceStencilObject >, MeshObject< fvMesh, extendedLeastSquaresVectors >, MeshObject< fvMesh, FitDataType >, MeshObject< fvMesh, volPointInterpolation >, MeshObject< lduMesh, GAMGAgglomeration >, ZoneMesh< faceZone, polyMesh >, ZoneMesh< pointZone, polyMesh >, and ZoneMesh< cellZone, polyMesh >.

Referenced by searchableSurfaceWithGaps::writeData().

void operator= ( const IOobject &   io  )

Reimplemented from IOobject.

Definition at line 277 of file regIOobject.C.

References IOobject::operator=().


Member Data Documentation

int fileModificationSkew [static]

Definition at line 96 of file regIOobject.H.


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