Template Class Inlet¶
Defined in File Inlet.hpp
Class Documentation¶
-
template<typename
ImplSpec_>
classuit::Inlet¶ Input to conduit transmission.
Allows user to initiate
potentially-blocking, assured transmisison via
Put, ornon-blocking, potentially-dropped transmission via
TryPut.
An
Inletholds astd::shared_ptrto aDuctobject, which manages data transmission from theInlet.An
Inlet’s underlyingDuctmay be altered or replaced at runtime, for example to provide thread-safe or process-safe transmission.EmplaceDuctemplaces a new transmission implementation within the existingDuctobject. (Seeinclude/ducts/Duct.hppfor details.)SplitDuctmakes a newDuctand points theInlet’sstd::shared_ptrto thatDuct.
If an
Outletholds astd::shared_ptrto theInlet’sDuct, under anEmplaceDuctcall theDuct’s change in transmission implementation will be visible to theOutletandInletand theOutletwill still share aDuct. However, under aSplitDuctcall thatOutlet’sDuctwill be unaffected. After aSplitDuctcall, theInletandOutletwill holdstd::shared_ptr’s to separateDucts.- Note
End users should probably never have to directly instantiate this class. The
Conduit,Sink, andSourceclasses take care of creating aDuctand tying it to anInletand/orOutlet. Better yet, theMeshTopologyinterface allows end users to construct a conduit network in terms of a connection topology and a mapping to assign nodes to threads and processes without having to manually constructConduitsand emplace necessary thread-safe and/or process-safeDuctimplementations.- Template Parameters
ImplSpec: class with static and typedef members specifying implementation details for the conduit framework. Seeinclude/config/ImplSpec.hpp.
Public Functions
TODO.
- Parameters
duct_: TODO.
-
void
Put(const T &val)¶ TODO.
- Parameters
val: TODO.
-
bool
TryPut(const T &val)¶ TODO.
- Parameters
val: TODO.
-
bool
TryFlush()¶ TODO.
-
void
Flush()¶ TODO.
-
size_t
GetNumPutsAttempted() const¶ TODO.
- Return
TODO.
-
size_t
GetNumTryPutsAttempted() const¶ TODO.
- Return
TODO.
-
size_t
GetNumBlockingPuts() const¶ TODO.
- Return
TODO.
-
size_t
GetNumTryPutsThatSucceeded() const¶ TODO.
- Return
TODO.
-
size_t
GetNumPutsThatSucceededEventually() const¶ TODO.
- Return
TODO.
-
size_t
GetNumBlockingPutsThatSucceededImmediately() const¶ TODO.
- Return
TODO.
-
size_t
GetNumPutsThatSucceededImmediately() const¶ TODO.
- Return
TODO.
-
size_t
GetNumPutsThatBlocked() const¶ TODO.
- Return
TODO.
-
size_t
GetNumDroppedPuts() const¶ TODO.
- Return
TODO.
-
double
GetFractionTryPutsDropped() const¶ TODO.
- Return
TODO.
-
double
GetFractionTryPutsThatSucceeded() const¶ TODO.
- Return
TODO.
-
double
GetFractionBlockingPutsThatBlocked() const¶ TODO.
- Return
TODO.
-
double
GetFractionBlockingPutsThatSucceededImmediately() const¶ TODO.
- Return
TODO.
-
double
GetFractionPutsThatSucceededEventually() const¶ TODO.
- Return
TODO.
-
double
GetFractionPutsThatSucceededImmediately() const¶ TODO.
- Return
TODO.
-
template<typename
WhichDuct, typename ...Args>
voidEmplaceDuct(Args&&... args)¶ TODO.
- Template Parameters
WhichDuct:Args:
- Parameters
args:
-
template<typename
WhichDuct, typename ...Args>
voidSplitDuct(Args&&... args)¶ TODO.
- Template Parameters
WhichDuct:Args:
- Parameters
args:
-
duct_t::uid_t
GetDuctUID() const¶ TODO.
- Return
TODO.
-
std::optional<bool>
HoldsIntraImpl() const¶
-
std::optional<bool>
HoldsThreadImpl() const¶
-
std::optional<bool>
HoldsProcImpl() const¶
-
std::string
WhichImplHeld() const¶
-
void
RegisterInletThread(const uitsl::thread_id_t thread) const¶
-
void
RegisterOutletThread(const uitsl::thread_id_t thread) const¶
-
void
RegisterEdgeID(const size_t edge_id) const¶
-
void
RegisterInletNodeID(const size_t node_id) const¶
-
void
RegisterOutletNodeID(const size_t node_id) const¶
-
void
RegisterMeshID(const size_t mesh_id) const¶
-
std::optional<uitsl::thread_id_t>
LookupOutletThread() const¶
-
std::optional<uitsl::thread_id_t>
LookupInletThread() const¶
-
std::optional<size_t>
LookupEdgeID() const¶
-
std::optional<size_t>
LookupInletNodeID() const¶
-
std::optional<size_t>
LookupOutletNodeID() const¶
-
std::optional<size_t>
LookupMeshID() const¶
-
std::string
ToString() const¶ TODO.
- Return
TODO.