BloombergLP::bslx::GenericInStream

Parameterized input stream for unexternalizing fundamental types.

Synopsis

Declared in <bslx_genericinstream.h>

template<class STREAMBUF>
class GenericInStream;

Description

This class provides input methods to unexternalize values, and C-style arrays of values, of the fundamental integral and floating-point types, as well as bsl::string values, using a byte format documented in the bslx_byteoutstream component. In particular, each get method of this class is guaranteed to read stream data written by the corresponding put method of bslx::GenericOutStream. Note that attempting to read beyond the end of a stream will automatically invalidate the stream. See the bslx package-level documentation for the definition of the BDEX InStream protocol.

Member Functions

NameDescription
GenericInStream [constructor]Create an input byte stream that reads its input from the specified streamBuf.
~GenericInStream [destructor]Destroy this object.
getArrayFloat32 Extract an array of four-byte IEEE floats from this stream.
getArrayFloat64 Extract an array of eight-byte IEEE doubles from this stream.
getArrayInt16 Extract an array of two-byte signed integers from this stream.
getArrayInt24 Extract an array of three-byte signed integers from this stream.
getArrayInt32 Extract an array of four-byte signed integers from this stream.
getArrayInt40 Extract an array of five-byte signed integers from this stream.
getArrayInt48 Extract an array of six-byte signed integers from this stream.
getArrayInt56 Extract an array of seven-byte signed integers from this stream.
getArrayInt64 Extract an array of eight-byte signed integers from this stream.
getArrayInt8 getArrayInt8 overloads
getArrayUint16 Extract an array of two-byte unsigned integers from this stream.
getArrayUint24 Extract an array of three-byte unsigned integers from this stream.
getArrayUint32 Extract an array of four-byte unsigned integers from this stream.
getArrayUint40 Extract an array of five-byte unsigned integers from this stream.
getArrayUint48 Extract an array of six-byte unsigned integers from this stream.
getArrayUint56 Extract an array of seven-byte unsigned integers from this stream.
getArrayUint64 Extract an array of eight-byte unsigned integers from this stream.
getArrayUint8 getArrayUint8 overloads
getFloat32 Extract a four-byte IEEE float into the specified variable.
getFloat64 Extract an eight-byte IEEE double into the specified variable.
getInt16 Extract a two-byte signed integer into the specified variable.
getInt24 Extract a three-byte signed integer into the specified variable.
getInt32 Extract a four-byte signed integer into the specified variable.
getInt40 Extract a five-byte signed integer into the specified variable.
getInt48 Extract a six-byte signed integer into the specified variable.
getInt56 Extract a seven-byte signed integer into the specified variable.
getInt64 Extract an eight-byte signed integer into the specified variable.
getInt8 getInt8 overloads
getLength Extract a BDEX-encoded length into the specified length.
getString Extract a BDEX-encoded string into the specified variable.
getUint16 Read a 16-bit unsigned integer into variable.
getUint24 Extract a three-byte unsigned integer into the specified variable.
getUint32 Extract a four-byte unsigned integer into the specified variable.
getUint40 Extract a five-byte unsigned integer into the specified variable.
getUint48 Extract a six-byte unsigned integer into the specified variable.
getUint56 Extract a seven-byte unsigned integer into the specified variable.
getUint64 Extract an eight-byte unsigned integer into the specified variable.
getUint8 getUint8 overloads
getVersion Extract a one-byte version number into the specified version.
invalidate Put this input stream in an invalid state.
isValid Return true if this stream is valid, and false otherwise.
operator void const* Return a non-zero value if this stream is valid, and 0 otherwise.

Non-Member Functions

NameDescription
operator>>Read the specified value from the specified input stream.