[#BloombergLP-bslmt-Sluice-2constructor-08e1]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::xref:BloombergLP/bslmt/Sluice.adoc[Sluice]::Sluice
:relfileprefix: ../../../
:mrdocs:

Constructors

== Synopses

Declared in `&lt;bslmt&lowbar;sluice&period;h&gt;`

Create a sluice&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bslmt/Sluice/2constructor-08ea.adoc[Sluice](xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bslmt/Sluice/2constructor-08ea.adoc[_» more&period;&period;&period;_]#

Create a sluice that uses the specified `clockType`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bslmt/Sluice/2constructor-0f.adoc[Sluice](
    xref:BloombergLP/bsls/SystemClockType/Enum.adoc[bsls::SystemClockType::Enum] clockType,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bslmt/Sluice/2constructor-0f.adoc[_» more&period;&period;&period;_]#

Create a sluice that uses the monotonic clock&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bslmt/Sluice/2constructor-09.adoc[Sluice](
    std::chrono::steady&lowbar;clock const& steadyClock,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bslmt/Sluice/2constructor-09.adoc[_» more&period;&period;&period;_]#

Create a sluice that uses the realtime clock&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
explicit
xref:BloombergLP/bslmt/Sluice/2constructor-0e.adoc[Sluice](
    std::chrono::system&lowbar;clock const& systemClock,
    xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]* basicAllocator = 0);
----

[.small]#xref:BloombergLP/bslmt/Sluice/2constructor-0e.adoc[_» more&period;&period;&period;_]#

== Parameters

[cols="1,4"]
|===
| Name| Description
| *basicAllocator*
| memory allocator&semi; null uses the default
| *clockType*
| clock used to interpret `timedWait` timeouts
| *steadyClock*
| tag selecting the system monotonic clock
| *systemClock*
| tag selecting the system realtime clock
|===


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