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

This class implements a test output stream for BDEX externalization&period;

== Synopsis

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

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

== Description

This class implements output methods to externalize fundamental types and their associated type identification data&period; It stores the accumulated result in network byte order&period; See the `bslx` package&hyphen;level documentation for the definition of the BDEX `OutStream` protocol&period;

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslx/TestOutStream/2constructor-0b.adoc[`TestOutStream`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/bslx/TestOutStream/2destructor.adoc[`&#126;TestOutStream`] [.small]#[destructor]#
| Destroy this object&period;
| xref:BloombergLP/bslx/TestOutStream/bdexVersionSelector.adoc[`bdexVersionSelector`] 
| Return the `versionSelector` to be used with `operator&lt;&lt;` for BDEX streaming as per the `bslx` package&hyphen;level documentation&period;
| xref:BloombergLP/bslx/TestOutStream/data.adoc[`data`] 
| Return the address of this stream&apos;s contiguous internal memory buffer&period;
| xref:BloombergLP/bslx/TestOutStream/invalidate.adoc[`invalidate`] 
| Put this output stream in an invalid state&period; This function has no effect if this stream is already invalid&period;
| xref:BloombergLP/bslx/TestOutStream/isValid.adoc[`isValid`] 
| Return `true` if this stream is valid, and `false` otherwise&period;
| xref:BloombergLP/bslx/TestOutStream/length.adoc[`length`] 
| Return the number of bytes in this stream&period;
| xref:BloombergLP/bslx/TestOutStream/makeNextInvalid.adoc[`makeNextInvalid`] 
| Make the next output operation emit the invalid data indicator&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayFloat32.adoc[`putArrayFloat32`] 
| Write an array of single&hyphen;precision floating&hyphen;point values to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayFloat64.adoc[`putArrayFloat64`] 
| Write an array of double&hyphen;precision floating&hyphen;point values to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayInt16.adoc[`putArrayInt16`] 
| Write an array of two&hyphen;byte signed integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayInt24.adoc[`putArrayInt24`] 
| Write an array of three&hyphen;byte signed integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayInt32.adoc[`putArrayInt32`] 
| Write an array of four&hyphen;byte signed integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayInt40.adoc[`putArrayInt40`] 
| Write an array of five&hyphen;byte signed integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayInt48.adoc[`putArrayInt48`] 
| Write an array of six&hyphen;byte signed integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayInt56.adoc[`putArrayInt56`] 
| Write an array of seven&hyphen;byte signed integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayInt64.adoc[`putArrayInt64`] 
| Write an array of eight&hyphen;byte signed integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayInt8-08.adoc[`putArrayInt8`] 
| Write an array of one&hyphen;byte signed integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayUint16.adoc[`putArrayUint16`] 
| Write an array of two&hyphen;byte unsigned integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayUint24.adoc[`putArrayUint24`] 
| Write an array of three&hyphen;byte unsigned integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayUint32.adoc[`putArrayUint32`] 
| Write an array of four&hyphen;byte unsigned integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayUint40.adoc[`putArrayUint40`] 
| Write an array of five&hyphen;byte unsigned integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayUint48.adoc[`putArrayUint48`] 
| Write an array of six&hyphen;byte unsigned integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayUint56.adoc[`putArrayUint56`] 
| Write an array of seven&hyphen;byte unsigned integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayUint64.adoc[`putArrayUint64`] 
| Write an array of eight&hyphen;byte unsigned integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putArrayUint8-05.adoc[`putArrayUint8`] 
| Write an array of one&hyphen;byte unsigned integers to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putFloat32.adoc[`putFloat32`] 
| Write a single&hyphen;precision floating&hyphen;point value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putFloat64.adoc[`putFloat64`] 
| Write a double&hyphen;precision floating&hyphen;point value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putInt16.adoc[`putInt16`] 
| Write a two&hyphen;byte signed integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putInt24.adoc[`putInt24`] 
| Write a three&hyphen;byte signed integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putInt32.adoc[`putInt32`] 
| Write a four&hyphen;byte signed integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putInt40.adoc[`putInt40`] 
| Write a five&hyphen;byte signed integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putInt48.adoc[`putInt48`] 
| Write a six&hyphen;byte signed integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putInt56.adoc[`putInt56`] 
| Write a seven&hyphen;byte signed integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putInt64.adoc[`putInt64`] 
| Write an eight&hyphen;byte signed integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putInt8.adoc[`putInt8`] 
| Write a one&hyphen;byte signed integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putLength.adoc[`putLength`] 
| Write a BDEX length value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putString.adoc[`putString`] 
| Write a string value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putUint16.adoc[`putUint16`] 
| Write a two&hyphen;byte unsigned integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putUint24.adoc[`putUint24`] 
| Write a three&hyphen;byte unsigned integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putUint32.adoc[`putUint32`] 
| Write a four&hyphen;byte unsigned integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putUint40.adoc[`putUint40`] 
| Write a five&hyphen;byte unsigned integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putUint48.adoc[`putUint48`] 
| Write a six&hyphen;byte unsigned integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putUint56.adoc[`putUint56`] 
| Write a seven&hyphen;byte unsigned integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putUint64.adoc[`putUint64`] 
| Write an eight&hyphen;byte unsigned integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putUint8.adoc[`putUint8`] 
| Write a one&hyphen;byte unsigned integer value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/putVersion.adoc[`putVersion`] 
| Write a BDEX version value to this stream&period;
| xref:BloombergLP/bslx/TestOutStream/reserveCapacity.adoc[`reserveCapacity`] 
| Set the internal buffer size of this stream to be at least the specified `newCapacity` (in bytes)&period;
| xref:BloombergLP/bslx/TestOutStream/reset.adoc[`reset`] 
| Remove all content in this stream and validate this stream if it is currently invalid&period;
| xref:BloombergLP/bslx/TestOutStream/2conversion.adoc[`operator void const*`] 
| Return a non&hyphen;zero value if this stream is valid, and 0 otherwise&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/bslx/operator_lshift-06.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_lshift-09.adoc[`operator&lt;&lt;`]
| Write a BDEX&hyphen;compliant `value` to the specified test output `stream`&period;
|===


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