Generic input stream using a standard (STL) stream. More...
Public Member Functions | |
ISstream (std::istream &is, const string &streamName, IOstreamOption streamOpt=IOstreamOption()) | |
Construct wrapper around std::istream, set stream status. More... | |
ISstream (std::istream &is, const string &streamName, IOstreamOption::streamFormat fmt, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
Construct wrapper around std::istream, set stream status. More... | |
ISstream (std::istream &is, const string &streamName, IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
Construct wrapper around std::istream, set stream status. More... | |
virtual | ~ISstream ()=default |
Destructor. More... | |
virtual const fileName & | name () const |
The name of the input serial stream. (eg, the name of the Fstream file name) More... | |
virtual fileName & | name () |
The name of the input serial stream, for modification. More... | |
virtual const std::istream & | stdStream () const |
Const access to underlying std::istream. More... | |
virtual std::istream & | stdStream () |
Access to underlying std::istream. More... | |
virtual ios_base::fmtflags | flags () const |
Return flags of output stream. More... | |
virtual ios_base::fmtflags | flags (const ios_base::fmtflags f) |
Set stream flags. More... | |
void | syncState () |
Set stream state to match that of the std::istream. More... | |
**return False if stream exhausted before finding the comment end *bool | seekCommentEnd_Cstyle () |
Discard until end of C-style comment '. More... | |
bool | continueReadUntilRightBrace (std::string &str, const bool stripComments=true) |
Raw, low-level get into a string. Continues reading after an initial left-brace until it finds the matching closing right-brace. More... | |
ISstream & | get (char &c) |
Raw, low-level get character function. More... | |
int | peek () |
Raw, low-level peek function. More... | |
ISstream & | getLine (std::string &str, char delim='\n') |
Raw, low-level getline (until delimiter) into a string. More... | |
std::streamsize | getLine (std::nullptr_t, char delim='\n') |
Low-level discard until delimiter. More... | |
ISstream & | putback (const char c) |
Raw, low-level putback character function. More... | |
virtual Istream & | read (token &t) |
Return next token from stream. More... | |
virtual Istream & | read (char &c) |
Read a character. More... | |
virtual Istream & | read (word &str) |
Read a word. More... | |
virtual Istream & | read (string &str) |
Read a string (including enclosing double-quotes). More... | |
virtual Istream & | read (label &val) |
Read a label. More... | |
virtual Istream & | read (float &val) |
Read a float. More... | |
virtual Istream & | read (double &val) |
Read a double. More... | |
virtual Istream & | read (char *buf, std::streamsize count) |
Read binary block. More... | |
virtual Istream & | readRaw (char *data, std::streamsize count) |
Low-level raw binary read. More... | |
virtual bool | beginRawRead () |
Start of low-level raw binary read. More... | |
virtual bool | endRawRead () |
End of low-level raw binary read. More... | |
virtual void | rewind () |
Rewind the stream so that it may be read again. More... | |
virtual void | print (Ostream &os) const |
Print stream description to Ostream. More... | |
Public Member Functions inherited from Istream | |
Istream (const Istream &)=default | |
Copy construct. More... | |
virtual | ~Istream ()=default |
Destructor. More... | |
Istream (IOstreamOption streamOpt=IOstreamOption()) | |
Default construct (ASCII, uncompressed), construct with specified stream option. More... | |
Istream (IOstreamOption::streamFormat fmt, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
Construct with format (uncompressed) More... | |
const token & | peekBack () const noexcept |
Examine putback token without removing it. More... | |
bool | peekBack (token &tok) |
Fetch putback token without removing it. More... | |
void | putBack (const token &tok) |
Put back a token. Only a single put back is permitted. More... | |
bool | getBack (token &tok) |
Get the put-back token if there is one. More... | |
bool | readBegin (const char *funcName) |
Begin read of data chunk, starts with '('. More... | |
bool | readEnd (const char *funcName) |
End read of data chunk, ends with ')'. More... | |
char | readBeginList (const char *funcName) |
Begin read of list data, starts with '(' or '{'. More... | |
char | readEndList (const char *funcName) |
End read of list data, ends with ')' or '}'. More... | |
Istream & | operator() () const |
Return a non-const reference to const Istream. More... | |
Public Member Functions inherited from IOstream | |
IOstream (const IOstream &)=default | |
Copy construct. More... | |
virtual | ~IOstream ()=default |
Destructor. More... | |
IOstream (IOstreamOption streamOpt=IOstreamOption()) | |
Default construct (ASCII, uncompressed), construct with specified stream option. More... | |
IOstream (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
Construct with format, version (compression) More... | |
fileName | relativeName () const |
Return the name of the stream relative to the current case. More... | |
virtual bool | check (const char *operation) const |
Check IOstream status for given operation. More... | |
bool | fatalCheck (const char *operation) const |
Check IOstream status for given operation. More... | |
bool | opened () const noexcept |
True if stream has been opened. More... | |
bool | closed () const noexcept |
True if stream is closed. More... | |
bool | good () const noexcept |
True if next operation might succeed. More... | |
bool | eof () const noexcept |
True if end of input seen. More... | |
bool | fail () const noexcept |
True if next operation will fail. More... | |
bool | bad () const noexcept |
True if stream is corrupted. More... | |
operator bool () const noexcept | |
Return true if the stream has not failed. More... | |
bool | operator! () const noexcept |
Return true if the stream has failed. More... | |
unsigned | labelByteSize () const noexcept |
The sizeof (label) in bytes associated with the stream. More... | |
unsigned | scalarByteSize () const noexcept |
The sizeof (scalar) in bytes associated with the stream. More... | |
void | setLabelByteSize (unsigned nbytes) noexcept |
Set the sizeof (label) in bytes associated with the stream. More... | |
void | setScalarByteSize (unsigned nbytes) noexcept |
Set the sizeof (scalar) in bytes associated with the stream. More... | |
template<class T = label> | |
std::enable_if< std::is_integral< T >::value, bool >::type | checkLabelSize () const noexcept |
Check if the label byte-size associated with the stream is the same as the given type. More... | |
template<class T = scalar> | |
std::enable_if< std::is_floating_point< T >::value, bool >::type | checkScalarSize () const noexcept |
Check if the scalar byte-size associated with the stream is the same as the given type. More... | |
label | lineNumber () const noexcept |
Const access to the current stream line number. More... | |
label & | lineNumber () noexcept |
Non-const access to the current stream line number. More... | |
label | lineNumber (const label num) noexcept |
Set the stream line number. More... | |
void | setEof () noexcept |
Set stream state as reached 'eof'. More... | |
void | setFail () noexcept |
Set stream state as 'failed'. More... | |
void | setBad () |
Set stream state to be 'bad'. More... | |
ios_base::fmtflags | setf (const ios_base::fmtflags f) |
Set flags of stream. More... | |
ios_base::fmtflags | setf (const ios_base::fmtflags f, const ios_base::fmtflags mask) |
Set flags of given field of stream. More... | |
void | unsetf (const ios_base::fmtflags f) |
Unset flags of stream. More... | |
void | print (Ostream &os, const int streamState) const |
Print information about the stream state bits. More... | |
InfoProxy< IOstream > | info () const |
Return info proxy. More... | |
Public Member Functions inherited from IOstreamOption | |
constexpr | IOstreamOption (streamFormat fmt=streamFormat::ASCII, compressionType comp=compressionType::UNCOMPRESSED) noexcept |
Default construct (ASCII, UNCOMPRESSED, currentVersion) or construct with format, compression. More... | |
constexpr | IOstreamOption (streamFormat fmt, compressionType comp, versionNumber ver) noexcept |
Construct from components (format, compression, version) More... | |
constexpr | IOstreamOption (streamFormat fmt, versionNumber ver, compressionType comp=compressionType::UNCOMPRESSED) noexcept |
Construct from components (format, version, compression) More... | |
IOstreamOption (const IOstreamOption &opt, streamFormat fmt) noexcept | |
Copy construct with change of format. More... | |
streamFormat | format () const noexcept |
Get the current stream format. More... | |
streamFormat | format (const streamFormat fmt) noexcept |
Set the stream format. More... | |
streamFormat | format (const word &formatName) |
Set the stream format from string value. More... | |
compressionType | compression () const noexcept |
Get the stream compression. More... | |
compressionType | compression (const compressionType comp) noexcept |
Set the stream compression. More... | |
compressionType | compression (const word &compName) |
Set the stream compression from string value. More... | |
versionNumber | version () const noexcept |
Get the stream version. More... | |
versionNumber | version (const versionNumber ver) noexcept |
Set the stream version. More... | |
versionNumber | version (const token &tok) |
Set the stream version from token. More... | |
Additional Inherited Members | |
Public Types inherited from IOstream | |
enum | streamAccess : char { CLOSED = 0, OPENED } |
Enumeration for stream open/closed state. More... | |
Public Types inherited from IOstreamOption | |
enum | streamFormat : char { ASCII = 0, BINARY } |
Data format (ascii | binary) More... | |
enum | compressionType : char { UNCOMPRESSED = 0, COMPRESSED } |
Compression treatment (UNCOMPRESSED | COMPRESSED) More... | |
enum | appendType : char { NON_APPEND = 0, APPEND } |
File appending (NON_APPEND | APPEND) More... | |
enum | atomicType : char { NON_ATOMIC = 0, ATOMIC } |
Atomic operations (output) More... | |
Static Public Member Functions inherited from IOstream | |
static unsigned int | defaultPrecision () noexcept |
Return the default precision. More... | |
static unsigned int | defaultPrecision (unsigned int prec) noexcept |
Reset the default precision. More... | |
Static Public Member Functions inherited from IOstreamOption | |
static streamFormat | formatEnum (const word &formatName, const streamFormat deflt=streamFormat::ASCII) |
The stream format enum corresponding to the string (ascii | binary). More... | |
static streamFormat | formatEnum (const word &key, const dictionary &dict, const streamFormat deflt=streamFormat::ASCII) |
Failsafe construct streamFormat from optional dictionary lookup. More... | |
static compressionType | compressionEnum (const word &compName, const compressionType deflt=compressionType::UNCOMPRESSED) |
The compression enum corresponding to the string. More... | |
static compressionType | compressionEnum (const word &key, const dictionary &dict, const compressionType deflt=compressionType::UNCOMPRESSED) |
Failsafe construct compressionType from optional dictionary lookup. More... | |
Static Public Attributes inherited from IOstream | |
static unsigned int | precision_ |
Default precision. More... | |
Static Public Attributes inherited from IOstreamOption | |
static const Enum< streamFormat > | formatNames |
Stream format names (ascii, binary) More... | |
static const versionNumber | currentVersion |
The current version number (2.0) More... | |
Protected Member Functions inherited from Istream | |
bool | hasPutback () const noexcept |
True if putback token is in use. More... | |
Protected Member Functions inherited from IOstream | |
void | setOpened () noexcept |
Set stream opened. More... | |
void | setClosed () noexcept |
Set stream closed. More... | |
void | setState (std::ios_base::iostate state) noexcept |
Set stream state. More... | |
void | setGood () noexcept |
Set stream state to be good. More... | |
Protected Attributes inherited from IOstream | |
std::ios_base::iostate | ioState_ |
Mirror of internal stream io state. More... | |
streamAccess | openClosed_ |
The stream open/closed state. More... | |
unsigned char | sizeofLabel_ |
The sizeof (label), possibly read from the header. More... | |
unsigned char | sizeofScalar_ |
The sizeof (scalar), possibly read from the header. More... | |
label | lineNumber_ |
The file line. More... | |
Static Protected Attributes inherited from IOstream | |
static fileName | staticName_ |
Name for any generic stream - normally treat as readonly. More... | |
Generic input stream using a standard (STL) stream.
Definition at line 51 of file ISstream.H.
|
inline |
Construct wrapper around std::istream, set stream status.
Default stream options (ASCII, uncompressed)
Definition at line 25 of file ISstreamI.H.
|
inline |
Construct wrapper around std::istream, set stream status.
Definition at line 96 of file ISstream.H.
|
inline |
Construct wrapper around std::istream, set stream status.
Definition at line 110 of file ISstream.H.
|
virtualdefault |
Destructor.
|
inlinevirtual |
The name of the input serial stream. (eg, the name of the Fstream file name)
Reimplemented from IOstream.
Definition at line 136 of file ISstream.H.
Referenced by dynamicCode::copyAndFilter(), IStringStream::print(), ISstream::print(), decomposedBlockData::readBlock(), ensightSurfaceReader::readCase(), FIREMeshReader::readCells(), FIREMeshReader::readFaces(), decomposedBlockData::readHeader(), and FIRECore::readPoints().
|
inlinevirtual |
The name of the input serial stream, for modification.
Definition at line 141 of file ISstream.H.
|
inlinevirtual |
Const access to underlying std::istream.
Reimplemented in IFstream.
Definition at line 149 of file ISstream.H.
Referenced by FIRECore::getFireLabel(), FIRECore::getFirePoint(), FIRECore::getFireString(), and Foam::skipComments().
|
inlinevirtual |
Access to underlying std::istream.
Reimplemented in IFstream.
Definition at line 154 of file ISstream.H.
|
inlinevirtual |
Return flags of output stream.
Implements IOstream.
Reimplemented in dummyISstream.
Definition at line 162 of file ISstream.H.
|
inlinevirtual |
Set stream flags.
Implements IOstream.
Reimplemented in dummyISstream.
Definition at line 170 of file ISstream.H.
References f().
|
inline |
Set stream state to match that of the std::istream.
Definition at line 178 of file ISstream.H.
References IOstream::setState().
Referenced by ISstream::get(), FIRECore::getFireLabel(), FIRECore::getFirePoint(), FIRECore::getFireString(), and Foam::skipComments().
bool seekCommentEnd_Cstyle | ( | ) |
Discard until end of C-style comment '.
Definition at line 72 of file ISstream.C.
References Foam::constant::universal::c.
Referenced by Foam::readUntilBalancedDelimiter(), and Foam::readVariable().
bool continueReadUntilRightBrace | ( | std::string & | str, |
const bool | stripComments = true |
||
) |
Raw, low-level get into a string. Continues reading after an initial left-brace until it finds the matching closing right-brace.
Tracks balanced pairs, trims out leading/trailing whitespace.
Definition at line 506 of file ISstream.C.
References token::BEGIN_BLOCK, token::END_BLOCK, and Foam::readUntilBalancedDelimiter().
|
inline |
Raw, low-level get character function.
Definition at line 49 of file ISstreamI.H.
References Foam::constant::universal::c, IOstream::good(), IOstream::lineNumber_, and ISstream::syncState().
Referenced by Foam::ReadHex(), Foam::readToNewline(), Foam::readUntilBalancedDelimiter(), Foam::readVariable(), and Foam::readVerbatim().
|
inline |
Raw, low-level peek function.
Does not remove the character from the stream. Returns the next character in the stream or EOF if the end of file is read.
Definition at line 63 of file ISstreamI.H.
Referenced by ABAQUSCore::readHelper::readElements(), ABAQUSCore::readHelper::readPoints(), ABAQUSCore::readHelper::readSurfaceElements(), and Foam::readVariable().
|
inline |
Raw, low-level getline (until delimiter) into a string.
Definition at line 69 of file ISstreamI.H.
Referenced by dynamicCode::copyAndFilter(), AC3DsurfaceFormatCore::cueTo(), FIRECore::getFireString(), edgeMeshFormatsCore::getLineNoComment(), surfaceFormatsCore::getLineNoComment(), csvTableReader< Type >::operator()(), NASedgeFormat::read(), AC3DsurfaceFormat< Face >::read(), NASsurfaceFormat< Face >::read(), ABAQUSCore::readHelper::read(), AC3DsurfaceFormatCore::readCmd(), externalCoupledMixedFvPatchField< scalar >::readData(), externalCoupledTemperatureMixedFvPatchScalarField::readData(), ABAQUSCore::readHelper::readElements(), STARCDsurfaceFormatCore::readInpCellTable(), ensightSurfaceReader::readLine(), lumpedPointState::readPlain(), ABAQUSCore::readHelper::readPoints(), ABAQUSCore::readHelper::readSurfaceElements(), Foam::readUntilBalancedDelimiter(), Foam::readVariable(), and Foam::skipComments().
|
inline |
Low-level discard until delimiter.
Definition at line 83 of file ISstreamI.H.
References Foam::BitOps::count(), and Foam::max().
|
inline |
Raw, low-level putback character function.
Definition at line 99 of file ISstreamI.H.
References Foam::constant::universal::c.
Referenced by Foam::readUntilBalancedDelimiter(), Foam::readVariable(), and Foam::readVerbatim().
|
virtual |
Return next token from stream.
Implements Istream.
Reimplemented in dummyISstream.
Definition at line 523 of file ISstream.C.
References token::ASSIGN, IOstream::bad(), token::BEGIN_BLOCK, token::BEGIN_LIST, token::BEGIN_SQR, Foam::constant::universal::c, Foam::charToWord(), token::COLON, token::COMMA, token::DIVIDE, token::DOLLAR, token::DQUOTE, token::END_BLOCK, token::END_LIST, token::END_SQR, token::END_STATEMENT, Foam::endl(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, Istream::getBack(), token::HASH, IOWarningInFunction, token::compound::isCompound(), token::lineNumber(), token::MINUS, token::MULTIPLY, token::compound::New(), Foam::nl, token::PLUS, Foam::read(), Foam::readVariable(), Foam::readVerbatim(), token::setBad(), token::setType(), and word::valid().
Referenced by Foam::getToken(), Foam::parseStream(), STARCDsurfaceFormat< Face >::read(), STARCDedgeFormat::read(), STARCDMeshReader::readBoundary(), STARCDMeshReader::readCells(), STARCDMeshReader::readPoints(), and STARCDCore::readPoints().
|
virtual |
Read a character.
Implements Istream.
Reimplemented in dummyISstream.
Definition at line 802 of file ISstream.C.
References Foam::constant::universal::c.
|
virtual |
Read a word.
Implements Istream.
Reimplemented in dummyISstream.
Definition at line 809 of file ISstream.C.
References token::BEGIN_LIST, Foam::constant::universal::c, token::END_LIST, Foam::endl(), errLen, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, IOWarningInFunction, Foam::nl, and word::valid().
|
virtual |
Read a string (including enclosing double-quotes).
Backslashes are retained, except when escaping double-quotes and an embedded newline character.
Implements Istream.
Reimplemented in ensightReadFile, and dummyISstream.
Definition at line 889 of file ISstream.C.
References Foam::constant::universal::c, token::DQUOTE, errLen, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and token::NL.
|
virtual |
Read a label.
Implements Istream.
Reimplemented in ensightReadFile, and dummyISstream.
Definition at line 990 of file ISstream.C.
|
virtual |
Read a float.
Implements Istream.
Reimplemented in ensightReadFile, and dummyISstream.
Definition at line 998 of file ISstream.C.
|
virtual |
Read a double.
Implements Istream.
Reimplemented in dummyISstream, and ensightReadFile.
Definition at line 1006 of file ISstream.C.
|
virtual |
Read binary block.
Implements Istream.
Reimplemented in dummyISstream, and ensightReadFile.
Definition at line 1014 of file ISstream.C.
References Foam::BitOps::count().
|
virtual |
Low-level raw binary read.
Implements Istream.
Reimplemented in dummyISstream.
Definition at line 1024 of file ISstream.C.
References Foam::BitOps::count(), and Istream::read().
|
virtual |
Start of low-level raw binary read.
Implements Istream.
Reimplemented in dummyISstream.
Definition at line 1032 of file ISstream.C.
References Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and format().
|
virtual |
End of low-level raw binary read.
Implements Istream.
Reimplemented in dummyISstream.
Definition at line 1047 of file ISstream.C.
|
virtual |
Rewind the stream so that it may be read again.
Implements Istream.
Reimplemented in UIListStream, IListStream, dummyISstream, and IFstream.
Definition at line 1055 of file ISstream.C.
Referenced by IStringStream::reset(), IFstream::rewind(), and simpleObjectRegistry::setValues().
|
virtual |
Print stream description to Ostream.
Reimplemented from IOstream.
Reimplemented in UIListStream, IListStream, IStringStream, and IFstream.
Definition at line 30 of file SstreamsPrint.C.
References ISstream::name(), os(), and IOstream::print().
Referenced by IFstream::print(), and IStringStream::print().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.