[#BloombergLP-bdlbb-OutBlobStreamBuf] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlbb.adoc[bdlbb]::OutBlobStreamBuf :relfileprefix: ../../ :mrdocs: This class implements the output functionality of the `basic_streambuf` protocol, using a client‐supplied `bdlbb::Blob`. == Synopsis Declared in `<bdlbb_blobstreambuf.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class OutBlobStreamBuf : public std::streambuf ---- == Base Classes [cols="1,4"] |=== | Name| Description | `std::streambuf` | |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlbb/OutBlobStreamBuf/2constructor.adoc[`OutBlobStreamBuf`] [.small]#[constructor]# | Create a `OutBlobStreamBuf` using the specified `blob`, and set the location at which the next write operation will occur to `blob‐>length()`. The behavior is undefined unless `blob` remains valid and externally unmodified for the lifetime of this `streambuf`. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/2destructor.adoc[`~OutBlobStreamBuf`] [.small]#[destructor]# [.small]#[virtual]# | Destroy this stream buffer. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/currentBufferIndex.adoc[`currentBufferIndex`] | Return the index of the current buffer. The behavior is undefined unless the "streamed" blob has at least one buffer. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/data-09.adoc[`data`] | Return the address of the blob held by this stream buffer. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/data-03.adoc[`data`] | Return the address of the blob held by this stream buffer. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/previousBuffersLength.adoc[`previousBuffersLength`] | Return the number of bytes contained in the buffers located before the current one. The behavior is undefined unless the "streamed" blob has at least one buffer. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/reset.adoc[`reset`] | Reset the put position of this buffer to the first location, available for writing in the underlying `bdlbb::Blob`. Optionally specify a `blob` used to change current underlying `bdlbb::Blob` value for. The behavior is undefined unless `blob` remains valid and externally unmodified for the lifetime of this `streambuf`. |=== == Protected Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlbb/OutBlobStreamBuf/overflow.adoc[`overflow`] [.small]#[virtual]# | Append the optionally specified character `c` to this streambuf, and return `c`. By default, `traits_type::eof()` is appended. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/pbackfail.adoc[`pbackfail`] [.small]#[virtual]# | Return `traits_type::eof()` unconditionally. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/seekoff.adoc[`seekoff`] [.small]#[virtual]# | Set the location from which the next I/O operation indicated by the optionally specified `which` mode will occur to the specified `offset` position from the location indicated by the specified `fixedPosition`. Return the new offset on success, and `off_type(‐1)` otherwise. `offset` may be negative. Note that this method will fail if `bsl::ios_base::in` is set. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/seekpos.adoc[`seekpos`] [.small]#[virtual]# | Set the location from which the next I/O operation indicated by the optionally specified `which` mode will occur to the specified `position`. Return `position` on success, and `off_type(‐1)` otherwise. Note that this method will fail if `bsl::ios_base::in` is set. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/showmanyc.adoc[`showmanyc`] [.small]#[virtual]# | Return 0 unconditionally. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/sync.adoc[`sync`] [.small]#[virtual]# | Synchronize the put position in the blob of this stream buffer. Return 0 unconditionally. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/underflow.adoc[`underflow`] [.small]#[virtual]# | Return `traits_type::eof()` unconditionally. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/xsgetn.adoc[`xsgetn`] [.small]#[virtual]# | Return 0 unconditionally. | xref:BloombergLP/bdlbb/OutBlobStreamBuf/xsputn.adoc[`xsputn`] [.small]#[virtual]# | Copy the specified `numChars` from the specified `source` to the blob held by this streambuf, starting at the current put area location. The behavior is undefined unless 0 <= `numChars`. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#