An ISstream with internal List storage. Always UNCOMPRESSED. More...
Public Member Functions | |
IListStream (IOstreamOption streamOpt=IOstreamOption()) | |
Default construct with an empty list. More... | |
IListStream (::Foam::List< char > &&buffer, IOstreamOption streamOpt=IOstreamOption()) | |
Move construct from List. More... | |
template<int SizeMin> | |
IListStream (DynamicList< char, SizeMin > &&buffer, IOstreamOption streamOpt=IOstreamOption()) | |
Move construct from DynamicList. More... | |
std::streampos | pos () const |
Return the current get position in the buffer. More... | |
virtual void | rewind () |
Rewind the stream, clearing any old errors. More... | |
virtual void | print (Ostream &os) const |
Print stream description to Ostream. More... | |
Istream & | operator() () const |
A non-const reference to const Istream. More... | |
label | size () const |
The current get position in the buffer. More... | |
![]() | |
void | clearStorage () |
Clear storage. More... | |
void | swap (List< char > &list) |
Transfer contents to other List. More... | |
label | size () const |
The current get position in the buffer. More... | |
![]() | |
const UList< char > | list () const |
Const UList access to the input characters (shallow copy). More... | |
UList< char > | list () |
Non-const UList access to the input characters (shallow copy). More... | |
label | size () const |
The list size. More... | |
std::streampos | tellg () const |
Position of the get buffer. More... | |
void | rewind () |
Move to buffer start, clear errors. More... | |
![]() | |
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::versionNumber ver=IOstreamOption::currentVersion, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
Construct wrapper around std::istream, set stream status. More... | |
virtual | ~ISstream ()=default |
Destructor. More... | |
virtual const fileName & | name () const |
Return the name of the stream. More... | |
virtual fileName & | name () |
Return stream name for modification. More... | |
virtual ios_base::fmtflags | flags () const |
Return flags of output stream. More... | |
bool | seekCommentEnd_Cstyle () |
Discard until end of C-style comment '*/'. More... | |
bool | continueReadUntilRightBrace (std::string &str, const bool stripComments=true) |
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 (floatScalar &val) |
Read a floatScalar. More... | |
virtual Istream & | read (doubleScalar &val) |
Read a doubleScalar. 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 ios_base::fmtflags | flags (const ios_base::fmtflags flags) |
Set stream flags. More... | |
virtual std::istream & | stdStream () |
Access to underlying std::istream. More... | |
virtual const std::istream & | stdStream () const |
Const access to underlying std::istream. More... | |
![]() | |
Istream (const Istream &)=default | |
Copy construct. More... | |
virtual | ~Istream ()=default |
Destructor. More... | |
Istream (IOstreamOption streamOpt=IOstreamOption()) | |
Istream (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver=IOstreamOption::currentVersion, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
Construct with format, version (compression) 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... | |
![]() | |
IOstream (const IOstream &)=default | |
Copy construct. More... | |
virtual | ~IOstream ()=default |
Destructor. More... | |
IOstream (IOstreamOption streamOpt=IOstreamOption()) | |
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 |
template<class T = scalar> | |
std::enable_if< std::is_floating_point< T >::value, bool >::type | checkScalarSize () const noexcept |
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... | |
![]() | |
constexpr | IOstreamOption (streamFormat fmt=streamFormat::ASCII, compressionType comp=compressionType::UNCOMPRESSED) noexcept |
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 | |
![]() | |
enum | streamAccess : char { CLOSED = 0, OPENED } |
Enumeration for stream open/closed state. More... | |
![]() | |
enum | streamFormat : char { ASCII = 0, BINARY } |
Data format (ascii | binary) More... | |
enum | compressionType : char { UNCOMPRESSED = 0, COMPRESSED } |
Compression treatment (UNCOMPRESSED | COMPRESSED) More... | |
![]() | |
static unsigned int | defaultPrecision () noexcept |
Return the default precision. More... | |
static unsigned int | defaultPrecision (unsigned int prec) noexcept |
Reset the default precision. More... | |
![]() | |
static streamFormat | formatEnum (const word &formatName, const streamFormat deflt=streamFormat::ASCII) |
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 unsigned int | precision_ |
Default precision. More... | |
![]() | |
static const Enum< streamFormat > | formatNames |
Stream format names (ascii, binary) More... | |
static const versionNumber | currentVersion |
The current version number (2.0) More... | |
![]() | |
typedef std::istream | stream_type |
![]() | |
IListStreamAllocator () | |
Default construct. More... | |
IListStreamAllocator (List< char > &&buffer) | |
Move construct from List. More... | |
template<int SizeMin> | |
IListStreamAllocator (DynamicList< char, SizeMin > &&buffer) | |
Move construct from DynamicList. More... | |
void | reset_gbuffer () |
Convenience method to address the underlying List storage. More... | |
![]() | |
UIListStreamAllocator (char *buffer, size_t nbytes) | |
Construct for character array and number of bytes. More... | |
void | reset (char *buffer, size_t nbytes) |
Reset buffer pointers. More... | |
void | printBufInfo (Ostream &os) const |
![]() | |
bool | hasPutback () const noexcept |
True if putback token is in use. More... | |
![]() | |
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... | |
![]() | |
memorybuf::in | buf_ |
The stream buffer. More... | |
stream_type | stream_ |
The stream. More... | |
![]() | |
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 fileName | staticName_ |
Name for any generic stream - normally treat as readonly. More... | |
An ISstream with internal List storage. Always UNCOMPRESSED.
An input stream that reads from a List and manages the List storage. Similar to IStringStream but with a List for its storage instead of as string to allow reuse of List contents without copying.
Definition at line 132 of file IListStream.H.
|
inlineexplicit |
Default construct with an empty list.
Definition at line 145 of file IListStream.H.
|
inlineexplicit |
Move construct from List.
Definition at line 155 of file IListStream.H.
|
inlineexplicit |
Move construct from DynamicList.
Definition at line 168 of file IListStream.H.
|
inline |
Return the current get position in the buffer.
Definition at line 185 of file IListStream.H.
References UIListStreamAllocator::tellg().
|
inlinevirtual |
Rewind the stream, clearing any old errors.
Reimplemented from ISstream.
Definition at line 191 of file IListStream.H.
References UIListStreamAllocator::rewind(), and IOstream::setGood().
|
virtual |
Print stream description to Ostream.
Reimplemented from ISstream.
Definition at line 34 of file ListStream.C.
References Foam::endl(), os(), and UIListStreamAllocator::printBufInfo().
|
inline |
A non-const reference to const Istream.
Needed for read-constructors where the stream argument is temporary
Definition at line 206 of file IListStream.H.
|
inline |
The current get position in the buffer.
Definition at line 175 of file UIListStream.H.