BloombergLP::bdlmt::Signaler_Node

Shared implementation object backing a Signaler.

Synopsis

Declared in <bdlmt_signaler.h>

template<class t_PROT>
class Signaler_Node
    : public bsl::enable_shared_from_this<Signaler_Node<t_PROT>>

Description

Provides the implementation of a signaler. This object has a 1-1 relationship with the Signaler, which has a shared pointer to it. This allows other objects to refer to it via shared and weak pointers. This allows SignalerConnection objects to outlive the `Signaler - Signaler_Node` pair, since they can test or lock weak pointers to see if the Signaler_Node still exists when they are trying to disconnect themselves.

Base Classes

NameDescription
bsl::enable_shared_from_this<Signaler_Node<t_PROT>>Mixin enabling an object to obtain a shared_ptr to itself.

Member Functions

NameDescription
Signaler_Node [constructor]Create a Signaler_Node with no connected slots.
connect Connect slot to this signaler in the specified group.
disconnectAllSlots Disconnect all slots connected to this signaler without waiting.
disconnectAllSlotsAndWait Disconnect all slots and wait for in-progress signals to finish.
disconnectGroup Disconnect all slots in group without waiting.
disconnectGroupAndWait Disconnect all slots in group and wait for in-progress signals.
invoke Invoke all connected slots with the supplied arguments.
notifyDisconnected Notify this signaler that the slot identified by slotMapKey disconnected.
shared_from_this shared_from_this overloads
slotCount Return the number of slots connected to this signaler.
synchronizeWait Block until all signals currently being emitted on the signaler have completed.
weak_from_this weak_from_this overloads

Protected Member Functions

NameDescription
operator= Return *this. This object is unchanged. Note that the specified rhs is not used.