ISstream Class Reference

Generic input stream. More...

Inheritance diagram for ISstream:
Collaboration diagram for ISstream:

Public Member Functions

 ISstream (istream &is, const string &name, streamFormat format=ASCII, versionNumber version=currentVersion, compressionType compression=UNCOMPRESSED)
 Construct as wrapper around istream. More...
 
virtual ~ISstream ()
 Destructor. More...
 
virtual const fileNamename () const
 Return the name of the stream. More...
 
virtual fileNamename ()
 Return non-const access to the name of the stream. More...
 
virtual ios_base::fmtflags flags () const
 Return flags of output stream. More...
 
ISstreamget (char &)
 Low-level get character function. More...
 
int peek ()
 Low-level peek function. More...
 
ISstreamputback (const char &)
 Low-level putback character function. More...
 
ISstreamgetLine (string &, const bool continuation=true)
 Read line into a string. More...
 
IstreamreadList (string &)
 Read a '(...)' delimited set of characters into a string. More...
 
IstreamreadBlock (string &)
 Read a '{...}' delimited set of characters into a string. More...
 
virtual Istreamread (token &)
 Return next token from stream. More...
 
virtual Istreamread (char &)
 Read a character. More...
 
virtual Istreamread (word &)
 Read a word. More...
 
virtual Istreamread (string &)
 Read a string (including enclosing double-quotes). More...
 
virtual Istreamread (int32_t &)
 Read an int32_t. More...
 
virtual Istreamread (int64_t &)
 Read an int64_t. More...
 
virtual Istreamread (uint32_t &)
 Read a uint32_t. More...
 
virtual Istreamread (uint64_t &)
 Read a uint64_t. More...
 
virtual Istreamread (floatScalar &)
 Read a floatScalar. More...
 
virtual Istreamread (doubleScalar &)
 Read a doubleScalar. More...
 
virtual Istreamread (longDoubleScalar &)
 Read a longDoubleScalar. More...
 
virtual Istreamread (char *, std::streamsize)
 Read binary block. More...
 
virtual Istreamrewind ()
 Rewind and return the stream so that it may be read again. More...
 
virtual ios_base::fmtflags flags (const ios_base::fmtflags flags)
 Set flags of output stream. More...
 
virtual istream & stdStream ()
 Access to underlying std::istream. More...
 
virtual const istream & stdStream () const
 Const access to underlying std::istream. More...
 
virtual void print (Ostream &) const
 Print description of IOstream to Ostream. More...
 
void operator= (const ISstream &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from Istream
 Istream (streamFormat format=ASCII, versionNumber version=currentVersion, compressionType compression=UNCOMPRESSED)
 Set stream status. More...
 
virtual ~Istream ()
 Destructor. More...
 
void putBack (const token &)
 Put back token. More...
 
bool getBack (token &)
 Get the put back token if there is one and return true. More...
 
bool peekBack (token &)
 Peek at the put back token without removing it. More...
 
IstreamreadBegin (const char *funcName)
 
IstreamreadEnd (const char *funcName)
 
IstreamreadEndBegin (const char *funcName)
 
char readBeginList (const char *funcName)
 
char readEndList (const char *funcName)
 
Istreamoperator() () const
 Return a non-const reference to const Istream. More...
 
- Public Member Functions inherited from IOstream
 IOstream (streamFormat format, versionNumber version, compressionType compression=UNCOMPRESSED)
 Construct setting format and version. More...
 
virtual ~IOstream ()
 Destructor. More...
 
virtual bool check (const char *operation) const
 Check IOstream status for given operation. More...
 
void fatalCheck (const char *operation) const
 Check IOstream status for given operation. More...
 
bool opened () const
 Return true if stream has been opened. More...
 
bool closed () const
 Return true if stream is closed. More...
 
bool good () const
 Return true if next operation might succeed. More...
 
bool eof () const
 Return true if end of input seen. More...
 
bool fail () const
 Return true if next operation will fail. More...
 
bool bad () const
 Return true if stream is corrupted. More...
 
 operator void * () const
 Return non-zero if the stream has not failed. More...
 
bool operator! () const
 Return true if the stream has failed. More...
 
streamFormat format () const
 Return current stream format. More...
 
streamFormat format (const streamFormat fmt)
 Set the stream format. More...
 
streamFormat format (const word &fmt)
 Set the stream format from word. More...
 
versionNumber version () const
 Return the stream version. More...
 
versionNumber version (const versionNumber ver)
 Set the stream version. More...
 
compressionType compression () const
 Return the stream compression. More...
 
compressionType compression (const compressionType cmp)
 Set the stream compression. More...
 
compressionType compression (const word &cmp)
 Set the stream compression from word. More...
 
label lineNumber () const
 Return current stream line number. More...
 
labellineNumber ()
 Return current stream line number. More...
 
label lineNumber (const label ln)
 Set the stream line number. More...
 
void setEof ()
 Set stream to have reached eof. More...
 
void setFail ()
 Set stream to have failed. More...
 
void setBad ()
 Set stream 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 uf)
 Unset flags of stream. More...
 
void print (Ostream &, const int streamState) const
 Check given stream state bits. More...
 
InfoProxy< IOstreaminfo () const
 Return info proxy. More...
 

Additional Inherited Members

- Public Types inherited from IOstream
enum  streamAccess { OPENED , CLOSED }
 Enumeration for whether the stream open or closed. More...
 
enum  streamFormat { ASCII , BINARY }
 Enumeration for the format of data in the stream. More...
 
enum  compressionType { UNCOMPRESSED , COMPRESSED }
 Enumeration for the format of data in the stream. More...
 
- Static Public Member Functions inherited from IOstream
static streamFormat formatEnum (const word &)
 Return stream format of given format name. More...
 
static compressionType compressionEnum (const word &)
 Return compression of given compression name. More...
 
static unsigned int defaultPrecision ()
 Return the default precision. More...
 
static unsigned int defaultPrecision (unsigned int p)
 Reset the default precision (and return old precision) More...
 
- Static Public Attributes inherited from IOstream
static const versionNumber currentVersion
 Current version number. More...
 
static unsigned int precision_
 Default precision. More...
 
- Protected Member Functions inherited from IOstream
void setOpened ()
 Set stream opened. More...
 
void setClosed ()
 Set stream closed. More...
 
void setState (ios_base::iostate state)
 Set stream state. More...
 
void setGood ()
 Set stream to be good. More...
 
- Protected Attributes inherited from IOstream
label lineNumber_
 

Detailed Description

Generic input stream.

Source files

Definition at line 52 of file ISstream.H.

Constructor & Destructor Documentation

◆ ISstream()

ISstream ( istream &  is,
const string name,
streamFormat  format = ASCII,
versionNumber  version = currentVersion,
compressionType  compression = UNCOMPRESSED 
)
inline

Construct as wrapper around istream.

Definition at line 30 of file ISstreamI.H.

References IOstream::setGood(), IOstream::setOpened(), and IOstream::setState().

Here is the call graph for this function:

◆ ~ISstream()

virtual ~ISstream ( )
inlinevirtual

Destructor.

Definition at line 111 of file ISstream.H.

Member Function Documentation

◆ name() [1/2]

virtual const fileName& name ( ) const
inlinevirtual

Return the name of the stream.

Useful for Fstream to return the filename

Reimplemented from IOstream.

Reimplemented in IFstream.

Definition at line 121 of file ISstream.H.

Referenced by dynamicCode::copyAndFilter(), includeEntry::execute(), includeEtcEntry::execute(), ISstream::print(), and IStringStream::print().

Here is the caller graph for this function:

◆ name() [2/2]

virtual fileName& name ( )
inlinevirtual

Return non-const access to the name of the stream.

Useful to alter the stream name

Reimplemented from IOstream.

Reimplemented in IFstream.

Definition at line 128 of file ISstream.H.

◆ flags() [1/2]

std::ios_base::fmtflags flags ( ) const
virtual

Return flags of output stream.

Implements IOstream.

Reimplemented in dummyISstream.

Definition at line 867 of file ISstream.C.

◆ get()

Foam::ISstream & get ( char &  c)
inline

Low-level get character function.

Definition at line 58 of file ISstreamI.H.

References Foam::constant::universal::c, and ISstream::get().

Referenced by ISstream::get(), and Foam::ReadHex().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ peek()

int peek ( )
inline

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 72 of file ISstreamI.H.

◆ putback()

Foam::ISstream & putback ( const char &  c)
inline

Low-level putback character function.

Definition at line 78 of file ISstreamI.H.

References Foam::constant::universal::c.

Referenced by functionEntry::readFuncNameArgs().

Here is the caller graph for this function:

◆ getLine()

◆ readList()

Foam::Istream & readList ( string str)

Read a '(...)' delimited set of characters into a string.

Definition at line 769 of file ISstream.C.

References token::BEGIN_LIST, and token::END_LIST.

Referenced by functionEntry::readFuncNameArgs().

Here is the caller graph for this function:

◆ readBlock()

Foam::Istream & readBlock ( string str)

Read a '{...}' delimited set of characters into a string.

Definition at line 775 of file ISstream.C.

References token::BEGIN_BLOCK, and token::END_BLOCK.

◆ read() [1/12]

Foam::Istream & read ( token t)
virtual

◆ read() [2/12]

Foam::Istream & read ( char &  c)
virtual

Read a character.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 400 of file ISstream.C.

References Foam::constant::universal::c.

◆ read() [3/12]

Foam::Istream & read ( word str)
virtual

Read a word.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 407 of file ISstream.C.

References token::BEGIN_LIST, Foam::constant::universal::c, token::END_LIST, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and word::valid().

Here is the call graph for this function:

◆ read() [4/12]

Foam::Istream & read ( string str)
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 dummyISstream.

Definition at line 464 of file ISstream.C.

References token::BEGIN_STRING, Foam::constant::universal::c, token::END_STRING, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, token::NL, and string::remove().

Here is the call graph for this function:

◆ read() [5/12]

Foam::Istream & read ( int32_t &  val)
virtual

Read an int32_t.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 781 of file ISstream.C.

◆ read() [6/12]

Foam::Istream & read ( int64_t &  val)
virtual

Read an int64_t.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 789 of file ISstream.C.

◆ read() [7/12]

Foam::Istream & read ( uint32_t &  val)
virtual

Read a uint32_t.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 797 of file ISstream.C.

◆ read() [8/12]

Foam::Istream & read ( uint64_t &  val)
virtual

Read a uint64_t.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 805 of file ISstream.C.

◆ read() [9/12]

Foam::Istream & read ( floatScalar val)
virtual

Read a floatScalar.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 813 of file ISstream.C.

◆ read() [10/12]

Foam::Istream & read ( doubleScalar val)
virtual

Read a doubleScalar.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 821 of file ISstream.C.

◆ read() [11/12]

Foam::Istream & read ( longDoubleScalar val)
virtual

Read a longDoubleScalar.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 829 of file ISstream.C.

◆ read() [12/12]

Foam::Istream & read ( char *  buf,
std::streamsize  count 
)
virtual

Read binary block.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 837 of file ISstream.C.

References Foam::count(), Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and format().

Here is the call graph for this function:

◆ rewind()

Foam::Istream & rewind ( )
virtual

Rewind and return the stream so that it may be read again.

Implements Istream.

Reimplemented in dummyISstream.

Definition at line 856 of file ISstream.C.

◆ flags() [2/2]

std::ios_base::fmtflags flags ( const ios_base::fmtflags  flags)
virtual

Set flags of output stream.

Implements IOstream.

Reimplemented in dummyISstream.

Definition at line 873 of file ISstream.C.

References f().

Here is the call graph for this function:

◆ stdStream() [1/2]

virtual istream& stdStream ( )
inlinevirtual

Access to underlying std::istream.

Reimplemented in IFstream.

Definition at line 212 of file ISstream.H.

Referenced by IStringStream::str(), and IStringStream::~IStringStream().

Here is the caller graph for this function:

◆ stdStream() [2/2]

virtual const istream& stdStream ( ) const
inlinevirtual

Const access to underlying std::istream.

Reimplemented in IFstream.

Definition at line 218 of file ISstream.H.

◆ print()

void print ( Ostream os) const
virtual

Print description of IOstream to Ostream.

Reimplemented from IOstream.

Reimplemented in IStringStream, and IFstream.

Definition at line 34 of file SstreamsPrint.C.

References ISstream::name(), and IOstream::print().

Referenced by IFstream::print(), and IStringStream::print().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

void operator= ( const ISstream )
delete

Disallow default bitwise assignment.


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