[#BloombergLP-balb-PipeControlChannel-2constructor-0a]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balb.adoc[balb]::xref:BloombergLP/balb/PipeControlChannel.adoc[PipeControlChannel]::PipeControlChannel
:relfileprefix: ../../../
:mrdocs:

Create a pipe control mechanism that dispatches messages to the specified `callback` and creates its underlying named pipe with the specified `permissions` bit mask&period; Optionally specify `basicAllocator` to supply memory&period; If `basicAllocator` is zero, the currently installed default allocator is used&period; The behavior is undefined unless `bdls&colon;&colon;FilePermissions&colon;&colon;isValidBaseBits(permissions)` (i&period;e&period;, unless `permissions` is a combination of the nine owner&sol;group&sol;others read&sol;write&sol;execute bits defined by `bdls&colon;&colon;FilePermissions`&semi; note that `k&lowbar;SET&lowbar;UID`, `k&lowbar;SET&lowbar;GID`, and `k&lowbar;STICKY&lowbar;BIT` are not accepted)&period; On operating systems that do not support Unix&hyphen;style permission bits (notably Windows) the value is ignored and falls back to the operating&hyphen;system default (see the component&hyphen;level documentation for details)&period;

== Synopsis

Declared in `&lt;balb&lowbar;pipecontrolchannel&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
PipeControlChannel(
    xref:BloombergLP/balb/PipeControlChannel/ControlCallback.adoc[ControlCallback] const& callback,
    int permissions,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----


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