Version of masterUncollatedFileOperation that collates regIOobjects into a container in the processors/ subdirectory. More...
Public Member Functions | |
TypeName ("collated") | |
collatedFileOperation (bool verbose) | |
collatedFileOperation (const label comm, const labelList &ioRanks, const word &typeName, bool verbose) | |
virtual | ~collatedFileOperation () |
virtual fileName | objectPath (const IOobject &io, const word &typeName) const |
virtual bool | writeObject (const regIOobject &, IOstreamOption streamOpt=IOstreamOption(), const bool valid=true) const |
virtual void | flush () const |
virtual word | processorsDir (const IOobject &) const |
virtual word | processorsDir (const fileName &) const |
virtual void | setNProcs (const label nProcs) |
![]() | |
TypeName ("masterUncollated") | |
masterUncollatedFileOperation (bool verbose) | |
masterUncollatedFileOperation (const label comm, bool verbose) | |
virtual | ~masterUncollatedFileOperation () |
virtual bool | mkDir (const fileName &, mode_t=0777) const |
virtual bool | chMod (const fileName &, const mode_t) const |
virtual mode_t | mode (const fileName &, const bool followLink=true) const |
virtual fileName::Type | type (const fileName &, const bool followLink=true) const |
virtual bool | exists (const fileName &, const bool checkGzip=true, const bool followLink=true) const |
virtual bool | isDir (const fileName &, const bool followLink=true) const |
virtual bool | isFile (const fileName &, const bool checkGzip=true, const bool followLink=true) const |
virtual off_t | fileSize (const fileName &, const bool followLink=true) const |
virtual time_t | lastModified (const fileName &, const bool followLink=true) const |
virtual double | highResLastModified (const fileName &, const bool followLink=true) const |
virtual fileNameList | readDir (const fileName &, const fileName::Type=fileName::FILE, const bool filtergz=true, const bool followLink=true) const |
virtual bool | cp (const fileName &src, const fileName &dst, const bool followLink=true) const |
virtual bool | ln (const fileName &src, const fileName &dst) const |
virtual bool | mv (const fileName &src, const fileName &dst, const bool followLink=false) const |
virtual bool | mvBak (const fileName &, const std::string &ext="bak") const |
virtual bool | rm (const fileName &) const |
virtual bool | rmDir (const fileName &dir, const bool silent=false) const |
virtual fileName | filePath (const bool checkGlobal, const IOobject &io, const word &typeName, const bool search) const |
virtual fileName | dirPath (const bool checkGlobal, const IOobject &io, const bool search) const |
virtual fileNameList | readObjects (const objectRegistry &db, const fileName &instance, const fileName &local, word &newInstance) const |
virtual bool | readHeader (IOobject &, const fileName &, const word &typeName) const |
virtual autoPtr< ISstream > | readStream (regIOobject &, const fileName &, const word &typeName, const bool valid=true) const |
virtual bool | read (regIOobject &, const bool masterOnly, const IOstreamOption::streamFormat format, const word &typeName) const |
virtual autoPtr< ISstream > | NewIFstream (const fileName &) const |
virtual autoPtr< OSstream > | NewOFstream (const fileName &pathname, IOstreamOption streamOpt=IOstreamOption(), const bool valid=true) const |
virtual label | addWatch (const fileName &) const |
virtual bool | removeWatch (const label) const |
virtual label | findWatch (const labelList &watchIndices, const fileName &) const |
virtual void | addWatches (regIOobject &, const fileNameList &) const |
virtual fileName | getFile (const label) const |
virtual void | updateStates (const bool masterOnly, const bool syncPar) const |
virtual fileMonitor::fileState | getState (const label) const |
virtual void | setUnmodified (const label) const |
virtual instantList | findTimes (const fileName &, const word &) const |
virtual IOobject | findInstance (const IOobject &io, const scalar startValue, const word &stopInstance) const |
virtual void | setTime (const Time &) const |
const HashPtrTable< instantList > & | times () const |
![]() | |
TypeName ("fileOperation") | |
fileOperation (const label comm, const bool distributedRoots=false) | |
declareRunTimeSelectionTable (autoPtr, fileOperation, word,(bool verbose),(verbose)) | |
virtual | ~fileOperation ()=default |
bool | distributed () const noexcept |
bool | distributed (bool on) const noexcept |
virtual fileName | filePath (const fileName &) const |
virtual label | nProcs (const fileName &dir, const fileName &local="") const |
fileName | processorsCasePath (const IOobject &, const word &procDir) const |
fileName | processorsPath (const IOobject &, const word &instance, const word &procDir) const |
fileName | processorsPath (const fileName &, const word &procDir) const |
Static Public Attributes | |
static float | maxThreadFileBufferSize |
![]() | |
static float | maxMasterFileBufferSize |
![]() | |
static const Enum< pathType > | pathTypeNames_ |
static word | processorsBaseDir = "processors" |
static word | defaultFileHandler |
static autoPtr< fileOperation > | fileHandlerPtr_ |
Protected Member Functions | |
void | printBanner (const bool printRanks=false) const |
bool | isMasterRank (const label proci) const |
bool | appendObject (const regIOobject &io, const fileName &pathName, IOstreamOption streamOpt) const |
![]() | |
template<class Type > | |
Type | scatterList (const UList< Type > &, const int, const label comm) const |
template<class Type , class fileOp > | |
Type | masterOp (const fileName &, const fileOp &fop, const int tag, const label comm) const |
template<class Type , class fileOp > | |
Type | masterOp (const fileName &, const fileName &, const fileOp &fop, const int tag, const label comm) const |
virtual fileName | filePathInfo (const bool checkGlobal, const bool isFile, const IOobject &, const bool search, pathType &searchType, word &processorsDir, word &instance) const |
fileName | localObjectPath (const IOobject &, const pathType &searchType, const word &processorsDir, const word &instancePath) const |
bool | exists (const dirIndexList &, IOobject &io) const |
![]() | |
fileMonitor & | monitor () const |
refPtr< dirIndexList > | lookupAndCacheProcessorsPath (const fileName &objectPath, const bool syncPar) const |
virtual refPtr< dirIndexList > | lookupProcessorsPath (const fileName &objectPath) const |
bool | exists (IOobject &io) const |
Protected Attributes | |
const label | myComm_ |
OFstreamCollator | writer_ |
label | nProcs_ |
const labelList | ioRanks_ |
![]() | |
const label | myComm_ |
HashPtrTable< instantList > | times_ |
![]() | |
const label | comm_ |
bool | distributed_ |
HashTable< dirIndexList > | procsDirs_ |
autoPtr< fileMonitor > | monitorPtr_ |
Additional Inherited Members | |
![]() | |
enum | pathType : int { NOTFOUND = 0, ABSOLUTE, OBJECT, WRITEOBJECT, PROCUNCOLLATED, PROCBASEOBJECT = PROCUNCOLLATED + 1, PROCOBJECT = PROCBASEOBJECT + 1, PARENTOBJECT, FINDINSTANCE, PROCUNCOLLATEDINSTANCE, PROCBASEINSTANCE, PROCINSTANCE } |
typedef Tuple2< fileName, Tuple2< pathType, int > > | dirIndex |
typedef List< dirIndex > | dirIndexList |
typedef IntRange< int > | procRangeType |
![]() | |
static bool | uniformFile (const fileNameList &) |
![]() | |
static autoPtr< fileOperation > | NewUncollated () |
static autoPtr< fileOperation > | New (const word &handlerType, bool verbose=false) |
static instantList | sortTimes (const fileNameList &dirEntries, const word &constantName="constant") |
static label | splitProcessorPath (const fileName &objectPath, fileName &path, fileName &procDir, fileName &local, procRangeType &group, label &nProcs) |
static label | detectProcessorPath (const fileName &objPath) |
![]() | |
static labelList | subRanks (const label n) |
static word | findInstancePath (const instantList &timeDirs, const instant &t) |
static void | readAndSend (const fileName &filePath, const labelUList &procs, PstreamBuffers &pBufs) |
static autoPtr< ISstream > | read (IOobject &io, const label comm, const bool uniform, const fileNameList &filePaths, const boolList &procValid) |
![]() | |
static labelList | ioRanks () |
static void | mergeTimes (const instantList &extraTimes, const word &constantName, instantList ×) |
static bool | isFileOrDir (const bool isFile, const fileName &) |
Version of masterUncollatedFileOperation that collates regIOobjects into a container in the processors/ subdirectory.
Uses threading if maxThreadFileBufferSize != 0. > 0 : Can use mpi inside thread to collect data if buffer is not large enough. Does need full thread support inside MPI.
< 0 : special : -maxThreadFileBufferSize is guaranteed large enough for all writing. Initialises MPI without thread support.
Definition at line 61 of file collatedFileOperation.H.
|
explicit |
Definition at line 252 of file collatedFileOperation.C.
References Foam::infoDetailLevel.
collatedFileOperation | ( | const label | comm, |
const labelList & | ioRanks, | ||
const word & | typeName, | ||
bool | verbose | ||
) |
Definition at line 282 of file collatedFileOperation.C.
References Foam::infoDetailLevel.
|
virtual |
Definition at line 304 of file collatedFileOperation.C.
References collatedFileOperation::flush(), UPstream::freeCommunicator(), collatedFileOperation::myComm_, and UPstream::worldComm.
|
protected |
Definition at line 73 of file collatedFileOperation.C.
References DynamicList::append(), DetailInfo, stdFoam::end(), Foam::endl(), forAll, Foam::constant::atomic::group, Foam::hostName(), and Foam::nl.
|
protected |
Definition at line 158 of file collatedFileOperation.C.
|
protected |
Definition at line 181 of file collatedFileOperation.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::FatalIOError, FatalIOErrorInFunction, IOobject::name(), IOobject::objectPath(), os(), Foam::Pout, IOstreamOption::version(), and Foam::writeHeader().
TypeName | ( | "collated" | ) |
|
virtual |
Reimplemented from fileOperation.
Definition at line 319 of file collatedFileOperation.C.
References IOobject::instance(), masterUncollatedFileOperation::localObjectPath(), word::null, fileOperation::OBJECT, TimePaths::processorCase(), fileOperation::PROCOBJECT, and IOobject::time().
|
virtual |
Reimplemented from masterUncollatedFileOperation.
Definition at line 349 of file collatedFileOperation.C.
References IOobject::bannerEnabled(), Foam::expressions::patchExpr::debug, dict, Foam::endl(), regIOobject::global(), IOobject::instance(), fileName::isAbsolute(), UPstream::master(), Foam::mkDir(), IOobject::name(), IOobject::objectPath(), os(), UPstream::parRun(), path(), IOobject::path(), Foam::Pout, TimePaths::processorCase(), IOobject::time(), regIOobject::writeData(), IOobject::writeEndDivider(), decomposedBlockData::writeExtraHeaderContent(), and IOobject::writeHeader().
|
virtual |
Reimplemented from masterUncollatedFileOperation.
Definition at line 512 of file collatedFileOperation.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), masterUncollatedFileOperation::flush(), and Foam::Pout.
Referenced by collatedFileOperation::~collatedFileOperation().
|
virtual |
Reimplemented from fileOperation.
Definition at line 590 of file collatedFileOperation.C.
References IOobject::objectPath().
|
virtual |
Reimplemented from fileOperation.
Definition at line 526 of file collatedFileOperation.C.
References Foam::name(), UPstream::nProcs(), UPstream::parRun(), and UPstream::procID().
|
virtual |
Reimplemented from fileOperation.
Definition at line 598 of file collatedFileOperation.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), and Foam::Pout.
|
protected |
Definition at line 70 of file collatedFileOperation.H.
Referenced by collatedFileOperation::~collatedFileOperation().
|
mutableprotected |
Definition at line 73 of file collatedFileOperation.H.
|
protected |
Definition at line 78 of file collatedFileOperation.H.
|
protected |
Definition at line 81 of file collatedFileOperation.H.
|
static |
Definition at line 113 of file collatedFileOperation.H.
Referenced by collatedFileOperationInitialise::needsThreading().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.