Public Member Functions | List of all members
OListStream Class Reference

An output stream that writes to a List and manages the List storage. Similar to OStringStream but with a List for its storage instead of as string to allow reuse of List contents without copying. More...

Inheritance diagram for OListStream:
Inheritance graph
[legend]
Collaboration diagram for OListStream:
Collaboration graph
[legend]

Public Member Functions

 OListStream (IOstreamOption streamOpt=IOstreamOption())
 
 OListStream (size_t nbytes, IOstreamOption streamOpt=IOstreamOption())
 
 OListStream (List< char > &&buffer, IOstreamOption streamOpt=IOstreamOption())
 
template<int SizeMin>
 OListStream (DynamicList< char, SizeMin > &&buffer, IOstreamOption streamOpt=IOstreamOption())
 
virtual void rewind ()
 
virtual void print (Ostream &os) const
 
- Public Member Functions inherited from OListStreamAllocator
const UList< char > list () const
 
UList< char > list ()
 
label capacity () const
 
label size () const
 
void reserve (const std::streamsize n)
 
void setBlockSize (int n)
 
void swap (List< char > &other)
 
template<int SizeMin>
void swap (DynamicList< char, SizeMin > &other)
 
void shrink ()
 
void clearStorage ()
 
void rewind ()
 
- Public Member Functions inherited from OSstream
 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 fileNamename () const
 
virtual fileNamename ()
 
virtual ios_base::fmtflags flags () const
 
virtual bool write (const token &tok)
 
virtual Ostreamwrite (const char c)
 
virtual Ostreamwrite (const char *str)
 
virtual Ostreamwrite (const word &str)
 
virtual Ostreamwrite (const string &str)
 
virtual OstreamwriteQuoted (const std::string &str, const bool quoted=true)
 
virtual Ostreamwrite (const int32_t val)
 
virtual Ostreamwrite (const int64_t val)
 
virtual Ostreamwrite (const floatScalar val)
 
virtual Ostreamwrite (const doubleScalar val)
 
virtual Ostreamwrite (const char *data, std::streamsize count)
 
virtual OstreamwriteRaw (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
 
- Public Member Functions inherited from Ostream
 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 Ostreamwrite (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 OstreamwriteKeyword (const keyType &kw)
 
virtual OstreambeginBlock (const keyType &kw)
 
virtual OstreambeginBlock ()
 
virtual OstreamendBlock ()
 
virtual OstreamendEntry ()
 
template<class T >
OstreamwriteEntry (const keyType &key, const T &value)
 
template<class T >
OstreamwriteEntryIfDifferent (const word &key, const T &value1, const T &value2)
 
Ostreamoperator() () const
 
unsigned short & indentLevel () noexcept
 
unsigned short & indentSize () noexcept
 
- Public Member Functions inherited from IOstream
 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< IOstreaminfo () const
 
- Public Member Functions inherited from IOstreamOption
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

- Public Types inherited from IOstream
enum  streamAccess : char { CLOSED = 0, OPENED }
 
- Public Types inherited from IOstreamOption
enum  streamFormat : char { ASCII = 0, BINARY }
 
enum  compressionType : char { UNCOMPRESSED = 0, COMPRESSED }
 
- Static Public Member Functions inherited from IOstream
static unsigned int defaultPrecision () noexcept
 
static unsigned int defaultPrecision (unsigned int prec) noexcept
 
- Static Public Member Functions inherited from IOstreamOption
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 Public Attributes inherited from IOstream
static unsigned int precision_
 
- Static Public Attributes inherited from IOstreamOption
static const Enum< streamFormatformatNames
 
static const versionNumber currentVersion
 
- Protected Types inherited from OListStreamAllocator
typedef std::ostream stream_type
 
- Protected Member Functions inherited from OListStreamAllocator
 OListStreamAllocator (size_t nbytes=512)
 
 OListStreamAllocator (List< char > &&buffer)
 
template<int SizeMin>
 OListStreamAllocator (DynamicList< char, SizeMin > &&buffer)
 
void printBufInfo (Ostream &os) const
 
- Protected Member Functions inherited from IOstream
void setOpened () noexcept
 
void setClosed () noexcept
 
void setState (std::ios_base::iostate state) noexcept
 
void setGood () noexcept
 
- Protected Attributes inherited from OListStreamAllocator
dynbuf buf_
 
stream_type stream_
 
- Protected Attributes inherited from Ostream
unsigned short indentSize_ = 4
 
unsigned short indentLevel_ = 0
 
- Protected Attributes inherited from IOstream
std::ios_base::iostate ioState_
 
streamAccess openClosed_
 
unsigned char sizeofLabel_
 
unsigned char sizeofScalar_
 
label lineNumber_
 
- Static Protected Attributes inherited from Ostream
static constexpr const unsigned short entryIndentation_ = 16
 
- Static Protected Attributes inherited from IOstream
static fileName staticName_
 

Detailed Description

An output stream that writes to a List and manages the List storage. Similar to OStringStream but with a List for its storage instead of as string to allow reuse of List contents without copying.

The default list size is 512-bytes with a 256-byte block increment. These values can be changed after construction using the reserve() and the setBlockSize() methods.

See also
Foam::IListStream Foam::UOListStream Foam::UIListStream

Definition at line 395 of file OListStream.H.

Constructor & Destructor Documentation

◆ OListStream() [1/4]

OListStream ( IOstreamOption  streamOpt = IOstreamOption())
inlineexplicit

Definition at line 408 of file OListStream.H.

◆ OListStream() [2/4]

OListStream ( size_t  nbytes,
IOstreamOption  streamOpt = IOstreamOption() 
)
inlineexplicit

Definition at line 418 of file OListStream.H.

◆ OListStream() [3/4]

OListStream ( List< char > &&  buffer,
IOstreamOption  streamOpt = IOstreamOption() 
)
inlineexplicit

Definition at line 429 of file OListStream.H.

◆ OListStream() [4/4]

OListStream ( DynamicList< char, SizeMin > &&  buffer,
IOstreamOption  streamOpt = IOstreamOption() 
)
inlineexplicit

Definition at line 441 of file OListStream.H.

Member Function Documentation

◆ rewind()

virtual void rewind ( )
inlinevirtual

Definition at line 454 of file OListStream.H.

References OListStreamAllocator::rewind(), and IOstream::setGood().

Here is the call graph for this function:

◆ print()

void print ( Ostream os) const
virtual

Reimplemented from OSstream.

Definition at line 43 of file ListStream.C.

References Foam::endl(), and os().

Here is the call graph for this function:

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