[#BloombergLP-bslx-TestInStream]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslx.adoc[bslx]::TestInStream
:relfileprefix: ../../
:mrdocs:

This class provides a test input stream for BDEX unexternalization&period;

== Synopsis

Declared in `&lt;bslx&lowbar;testinstream&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class TestInStream;
----

== Description

This class provides input methods to unexternalize values, and C&hyphen;style arrays of values, of fundamental types from their byte representations&period; Each input method also verifies the input value type&period; By default, if invalid data is detected, error messages are displayed on `stdout`&semi; this error reporting may be disabled via the `setQuiet` method&period; Note that attempting to read beyond the end of a stream will automatically invalidate the stream&period; See the `bslx` package&hyphen;level documentation for the definition of the BDEX `InStream` protocol&period;

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslx/TestInStream/2constructor-073.adoc[`TestInStream`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/bslx/TestInStream/2destructor.adoc[`&#126;TestInStream`] [.small]#[destructor]#
| Destroy this test input stream&period;
| xref:BloombergLP/bslx/TestInStream/cursor.adoc[`cursor`] 
| Return the index of the next byte to be extracted from this stream&period;
| xref:BloombergLP/bslx/TestInStream/data.adoc[`data`] 
| Return the address of this stream&apos;s contiguous external memory buffer&period;
| xref:BloombergLP/bslx/TestInStream/getArrayFloat32.adoc[`getArrayFloat32`] 
| Consume an array of single&hyphen;precision floats from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayFloat64.adoc[`getArrayFloat64`] 
| Consume an array of double&hyphen;precision floats from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayInt16.adoc[`getArrayInt16`] 
| Consume an array of two&hyphen;byte signed integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayInt24.adoc[`getArrayInt24`] 
| Consume an array of three&hyphen;byte signed integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayInt32.adoc[`getArrayInt32`] 
| Consume an array of four&hyphen;byte signed integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayInt40.adoc[`getArrayInt40`] 
| Consume an array of five&hyphen;byte signed integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayInt48.adoc[`getArrayInt48`] 
| Consume an array of six&hyphen;byte signed integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayInt56.adoc[`getArrayInt56`] 
| Consume an array of seven&hyphen;byte signed integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayInt64.adoc[`getArrayInt64`] 
| Consume an array of eight&hyphen;byte signed integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayInt8-07.adoc[`getArrayInt8`] 
| Consume an array of one&hyphen;byte signed integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayUint16.adoc[`getArrayUint16`] 
| Consume an array of two&hyphen;byte unsigned integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayUint24.adoc[`getArrayUint24`] 
| Consume an array of three&hyphen;byte unsigned integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayUint32.adoc[`getArrayUint32`] 
| Consume an array of four&hyphen;byte unsigned integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayUint40.adoc[`getArrayUint40`] 
| Consume an array of five&hyphen;byte unsigned integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayUint48.adoc[`getArrayUint48`] 
| Consume an array of six&hyphen;byte unsigned integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayUint56.adoc[`getArrayUint56`] 
| Consume an array of seven&hyphen;byte unsigned integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayUint64.adoc[`getArrayUint64`] 
| Consume an array of eight&hyphen;byte unsigned integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getArrayUint8-0d.adoc[`getArrayUint8`] 
| Consume an array of one&hyphen;byte unsigned integers from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getFloat32.adoc[`getFloat32`] 
| Consume a single&hyphen;precision floating&hyphen;point value from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getFloat64.adoc[`getFloat64`] 
| Consume a double&hyphen;precision floating&hyphen;point value from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getInt16.adoc[`getInt16`] 
| Consume a two&hyphen;byte signed integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getInt24.adoc[`getInt24`] 
| Consume a three&hyphen;byte signed integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getInt32.adoc[`getInt32`] 
| Consume a four&hyphen;byte signed integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getInt40.adoc[`getInt40`] 
| Consume a five&hyphen;byte signed integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getInt48.adoc[`getInt48`] 
| Consume a six&hyphen;byte signed integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getInt56.adoc[`getInt56`] 
| Consume a seven&hyphen;byte signed integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getInt64.adoc[`getInt64`] 
| Consume an eight&hyphen;byte signed integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getInt8-07.adoc[`getInt8`] 
| Consume a one&hyphen;byte signed integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getLength.adoc[`getLength`] 
| Consume a BDEX length value from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getString.adoc[`getString`] 
| Consume a string value from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getUint16.adoc[`getUint16`] 
| Consume a two&hyphen;byte unsigned integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getUint24.adoc[`getUint24`] 
| Consume a three&hyphen;byte unsigned integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getUint32.adoc[`getUint32`] 
| Consume a four&hyphen;byte unsigned integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getUint40.adoc[`getUint40`] 
| Consume a five&hyphen;byte unsigned integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getUint48.adoc[`getUint48`] 
| Consume a six&hyphen;byte unsigned integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getUint56.adoc[`getUint56`] 
| Consume a seven&hyphen;byte unsigned integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getUint64.adoc[`getUint64`] 
| Consume an eight&hyphen;byte unsigned integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getUint8-0d.adoc[`getUint8`] 
| Consume a one&hyphen;byte unsigned integer from this stream&period;
| xref:BloombergLP/bslx/TestInStream/getVersion.adoc[`getVersion`] 
| Consume a BDEX version value from this stream&period;
| xref:BloombergLP/bslx/TestInStream/inputLimit.adoc[`inputLimit`] 
| Return the current number of input requests left before an exception is thrown&period; A negative value indicates that no exception is scheduled&period;
| xref:BloombergLP/bslx/TestInStream/invalidate.adoc[`invalidate`] 
| Put this input stream in an invalid state&period;
| xref:BloombergLP/bslx/TestInStream/isEmpty.adoc[`isEmpty`] 
| Return `true` if this stream is empty, and `false` otherwise&period;
| xref:BloombergLP/bslx/TestInStream/isQuiet.adoc[`isQuiet`] 
| Return `true` if this stream&apos;s quiet mode is ON, and `false` otherwise&period;
| xref:BloombergLP/bslx/TestInStream/isValid.adoc[`isValid`] 
| Return `true` if this stream is valid, and `false` otherwise&period;
| xref:BloombergLP/bslx/TestInStream/length.adoc[`length`] 
| Return the total number of bytes stored in the external memory buffer&period;
| xref:BloombergLP/bslx/TestInStream/reset-0a.adoc[`reset`] 
| `reset` overloads
| xref:BloombergLP/bslx/TestInStream/seek.adoc[`seek`] 
| Set the extraction cursor to the specified `offset`&period;
| xref:BloombergLP/bslx/TestInStream/setInputLimit.adoc[`setInputLimit`] 
| Set the number of remaining input operations before an exception&period;
| xref:BloombergLP/bslx/TestInStream/setQuiet.adoc[`setQuiet`] 
| Set whether this stream suppresses error messages on standard output&period;
| xref:BloombergLP/bslx/TestInStream/2conversion.adoc[`operator void const*`] 
| Return a non&hyphen;zero value if this stream is valid, and 0 otherwise&period; An invalid stream is a stream for which an input operation was detected to have failed&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/bslx/operator_lshift-0a1.adoc[BloombergLP::bslx::operator&lt;&lt;]`
| Write the specified `object` to the specified output `stream` in some reasonable (multi&hyphen;line) format, and return a reference to `stream`&period;
|===

== Non-Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslx/operator_rshift-0c.adoc[`operator&gt;&gt;`]
| Read a BDEX&hyphen;compliant `value` from the specified test input `stream`&period;
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
