41 bool Foam::surfZoneIOList::readIOcontents()
53 PtrList<entry> entries(is);
54 zones.resize(entries.size());
57 label startOffset = 0;
60 zones[zonei] = surfZone
62 entries[zonei].keyword(),
63 entries[zonei].
dict(),
67 if (zones[zonei].start() != startOffset)
70 <<
"surfZones are not ordered. Start of zone " << zonei
71 <<
" does not correspond to sum of preceding zones." <<
nl 76 startOffset += zones[zonei].size();
130 const label len = zones.
size();
void size(const label n)
Older name for setAddressableSize.
surfZoneIOList(const IOobject &io)
Construct from IOobject.
errorManipArg< error, int > exit(error &err, const int errNo=1)
error FatalError
Error stream (stdout output on all processes), with additional 'FOAM FATAL ERROR' header text and sta...
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
A surface zone on a MeshedSurface.
constexpr char nl
The newline '\n' character (0x0a)
Ostream & endl(Ostream &os)
Add newline and flush stream.
Begin list [isseparator].
#define forAll(list, i)
Loop across all elements in list.
defineTypeName(manifoldCellsMeshObject)
void operator=(const UList< surfZone > &list)
Assignment to UList operator. Takes linear time.
void close()
Close Istream.
IOobject for a surfZoneList.
A 1D vector of objects of type <T>, where the size of the vector is known and can be used for subscri...
An Ostream is an abstract base class for all output systems (streams, files, token lists...
OBJstream os(runTime.globalPath()/outputName)
Ostream & decrIndent(Ostream &os)
Decrement the indent level.
bool isReadRequired() const noexcept
True if (MUST_READ | READ_MODIFIED) bits are set.
Ostream & operator<<(Ostream &, const boundaryPatch &p)
Write boundaryPatch as dictionary entries (without surrounding braces)
bool good() const noexcept
True if next operation might succeed.
List< surfZone > surfZoneList
List of surfZone.
regIOobject is an abstract class derived from IOobject to handle automatic object registration with t...
fileName objectRelPath() const
The object path relative to the root.
IOobject io("surfaceFilmProperties", mesh.time().constant(), mesh, IOobject::READ_IF_PRESENT, IOobject::NO_WRITE, IOobject::NO_REGISTER)
Ostream & incrIndent(Ostream &os)
Increment the indent level.
Defines the attributes of an object for which implicit objectRegistry management is supported...
Istream & readStream(const word &, const bool readOnProc=true)
Return Istream and check object type against that given.
bool writeData(Ostream &os) const
The writeData function - required by regIOobject.
void operator=(const surfZoneIOList &rhs)
Copy assignment of entries.