BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bslstl_syncbufbase

Detailed Description

Outline

Purpose

Provide an allocator-independent base-class for basic_syncbuf .

Classes

See also
bslstl_syncbuf

Description

This component is for internal use only. Please don't use it directly.

This component provides a protocol class, SyncBufBase, that is intended for use as a base class for synchronized stream buffers. The SyncBufBase protocol provides methods to emit the synchronized buffer, and mark the buffer to be emitted on a call to sync on an associated stream. This operations are exposed by SyncBufBaseUtil for use by standard functions, like bsl::emit_on_flush, bsl::noemit_on_flush, and bsl::flush_emit, while not exposing them into the public interface of derived types (like basic_syncbuf ) whose interface in defined by an external standard.

Factoring these operations into a non-templatized base class allows operations (like bsl::emit_on_flush etc) to applied to derived objects in contexts where it is impossible to deduce the ALLOCATOR type of the inheriting synchornized buffer.