Similar to OStringStream but using an externally managed buffer for its output. More...
Public Member Functions | |
UOListStream (char *buffer, size_t nbytes, IOstreamOption streamOpt=IOstreamOption()) | |
UOListStream (UList< char > &buffer, size_t nbytes, IOstreamOption streamOpt=IOstreamOption()) | |
UOListStream (UList< char > &buffer, IOstreamOption streamOpt=IOstreamOption()) | |
template<unsigned N> | |
UOListStream (FixedList< char, N > &buffer, IOstreamOption streamOpt=IOstreamOption()) | |
template<int SizeMin> | |
UOListStream (DynamicList< char, SizeMin > &buffer, IOstreamOption streamOpt=IOstreamOption()) | |
virtual void | rewind () |
virtual void | print (Ostream &os) const |
![]() | |
const UList< char > | list () const |
UList< char > | list () |
label | capacity () const |
label | size () const |
void | rewind () |
![]() | |
OSstream (const OSstream &)=default | |
void | operator= (const OSstream &)=delete |
OSstream (std::ostream &os, const string &streamName, IOstreamOption streamOpt=IOstreamOption()) | |
OSstream (std::ostream &os, const string &streamName, IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver=IOstreamOption::currentVersion, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
virtual const fileName & | name () const |
virtual fileName & | name () |
virtual ios_base::fmtflags | flags () const |
virtual bool | write (const token &tok) |
virtual Ostream & | write (const char c) |
virtual Ostream & | write (const char *str) |
virtual Ostream & | write (const word &str) |
virtual Ostream & | write (const string &str) |
virtual Ostream & | writeQuoted (const std::string &str, const bool quoted=true) |
virtual Ostream & | write (const int32_t val) |
virtual Ostream & | write (const int64_t val) |
virtual Ostream & | write (const floatScalar val) |
virtual Ostream & | write (const doubleScalar val) |
virtual Ostream & | write (const char *data, std::streamsize count) |
virtual Ostream & | writeRaw (const char *data, std::streamsize count) |
virtual bool | beginRawWrite (std::streamsize count) |
virtual bool | endRawWrite () |
virtual void | indent () |
virtual ios_base::fmtflags | flags (const ios_base::fmtflags f) |
virtual void | flush () |
virtual void | endl () |
virtual char | fill () const |
virtual char | fill (const char fillch) |
virtual int | width () const |
virtual int | width (const int w) |
virtual int | precision () const |
virtual int | precision (const int p) |
virtual std::ostream & | stdStream () |
virtual const std::ostream & | stdStream () const |
![]() | |
Ostream (const Ostream &)=default | |
virtual | ~Ostream ()=default |
Ostream (IOstreamOption streamOpt=IOstreamOption()) | |
Ostream (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver=IOstreamOption::currentVersion, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
virtual Ostream & | write (const keyType &kw) |
unsigned short | indentSize () const noexcept |
unsigned short | indentSize (unsigned short val) noexcept |
unsigned short | indentLevel () const noexcept |
unsigned short | indentLevel (unsigned short val) noexcept |
void | incrIndent () noexcept |
void | decrIndent () |
virtual Ostream & | writeKeyword (const keyType &kw) |
virtual Ostream & | beginBlock (const keyType &kw) |
virtual Ostream & | beginBlock () |
virtual Ostream & | endBlock () |
virtual Ostream & | endEntry () |
template<class T > | |
Ostream & | writeEntry (const keyType &key, const T &value) |
template<class T > | |
Ostream & | writeEntryIfDifferent (const word &key, const T &value1, const T &value2) |
Ostream & | operator() () const |
unsigned short & | indentLevel () noexcept |
unsigned short & | indentSize () noexcept |
![]() | |
IOstream (const IOstream &)=default | |
virtual | ~IOstream ()=default |
IOstream (IOstreamOption streamOpt=IOstreamOption()) | |
IOstream (IOstreamOption::streamFormat fmt, IOstreamOption::versionNumber ver, IOstreamOption::compressionType cmp=IOstreamOption::UNCOMPRESSED) | |
fileName | relativeName () const |
virtual bool | check (const char *operation) const |
bool | fatalCheck (const char *operation) const |
bool | opened () const noexcept |
bool | closed () const noexcept |
bool | good () const noexcept |
bool | eof () const noexcept |
bool | fail () const noexcept |
bool | bad () const noexcept |
operator bool () const noexcept | |
bool | operator! () const noexcept |
unsigned | labelByteSize () const noexcept |
unsigned | scalarByteSize () const noexcept |
void | setLabelByteSize (unsigned nbytes) noexcept |
void | setScalarByteSize (unsigned nbytes) noexcept |
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 |
label & | lineNumber () noexcept |
label | lineNumber (const label num) noexcept |
void | setEof () noexcept |
void | setFail () noexcept |
void | setBad () |
ios_base::fmtflags | setf (const ios_base::fmtflags f) |
ios_base::fmtflags | setf (const ios_base::fmtflags f, const ios_base::fmtflags mask) |
void | unsetf (const ios_base::fmtflags f) |
void | print (Ostream &os, const int streamState) const |
InfoProxy< IOstream > | info () const |
![]() | |
constexpr | IOstreamOption (streamFormat fmt=streamFormat::ASCII, compressionType comp=compressionType::UNCOMPRESSED) noexcept |
constexpr | IOstreamOption (streamFormat fmt, compressionType comp, versionNumber ver) noexcept |
constexpr | IOstreamOption (streamFormat fmt, versionNumber ver, compressionType comp=compressionType::UNCOMPRESSED) noexcept |
IOstreamOption (const IOstreamOption &opt, streamFormat fmt) noexcept | |
streamFormat | format () const noexcept |
streamFormat | format (const streamFormat fmt) noexcept |
streamFormat | format (const word &formatName) |
compressionType | compression () const noexcept |
compressionType | compression (const compressionType comp) noexcept |
compressionType | compression (const word &compName) |
versionNumber | version () const noexcept |
versionNumber | version (const versionNumber ver) noexcept |
versionNumber | version (const token &tok) |
Additional Inherited Members | |
![]() | |
enum | streamAccess : char { CLOSED = 0, OPENED } |
![]() | |
enum | streamFormat : char { ASCII = 0, BINARY } |
enum | compressionType : char { UNCOMPRESSED = 0, COMPRESSED } |
![]() | |
static unsigned int | defaultPrecision () noexcept |
static unsigned int | defaultPrecision (unsigned int prec) noexcept |
![]() | |
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) |
static compressionType | compressionEnum (const word &compName, const compressionType deflt=compressionType::UNCOMPRESSED) |
static compressionType | compressionEnum (const word &key, const dictionary &dict, const compressionType deflt=compressionType::UNCOMPRESSED) |
![]() | |
static unsigned int | precision_ |
![]() | |
static const Enum< streamFormat > | formatNames |
static const versionNumber | currentVersion |
![]() | |
typedef std::ostream | stream_type |
![]() | |
UOListStreamAllocator (char *buffer, size_t nbytes) | |
void | printBufInfo (Ostream &os) const |
![]() | |
void | setOpened () noexcept |
void | setClosed () noexcept |
void | setState (std::ios_base::iostate state) noexcept |
void | setGood () noexcept |
![]() | |
memorybuf::out | buf_ |
stream_type | stream_ |
![]() | |
unsigned short | indentSize_ = 4 |
unsigned short | indentLevel_ = 0 |
![]() | |
std::ios_base::iostate | ioState_ |
streamAccess | openClosed_ |
unsigned char | sizeofLabel_ |
unsigned char | sizeofScalar_ |
label | lineNumber_ |
![]() | |
static constexpr const unsigned short | entryIndentation_ = 16 |
![]() | |
static fileName | staticName_ |
Similar to OStringStream but using an externally managed buffer for its output.
This allows the output buffer to be reused and can make it easier when writing out data. It is the user's responsibility to ensure proper synchronization in the sizes. Provided that the external buffer is large enough that overflow does not occur, the following usage pattern works.
Although the UOListStream is quite lightweight, there may be cases where it is preferable to reuse the stream as well.
Definition at line 174 of file UOListStream.H.
|
inline |
Definition at line 187 of file UOListStream.H.
|
inline |
Definition at line 199 of file UOListStream.H.
|
inlineexplicit |
Definition at line 210 of file UOListStream.H.
|
inlineexplicit |
Definition at line 221 of file UOListStream.H.
|
inlineexplicit |
Definition at line 232 of file UOListStream.H.
|
inlinevirtual |
Definition at line 244 of file UOListStream.H.
References UOListStreamAllocator::rewind(), and IOstream::setGood().
|
virtual |
Reimplemented from OSstream.
Definition at line 51 of file ListStream.C.
References Foam::endl(), and os().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.