[#BloombergLP-bdlmt-Signaler_Node] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlmt.adoc[bdlmt]::Signaler_Node :relfileprefix: ../../ :mrdocs: Shared implementation object backing a `Signaler`. == Synopsis Declared in `<bdlmt_signaler.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class t_PROT> class Signaler_Node : public xref:bsl/enable_shared_from_this.adoc[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 [cols="1,4"] |=== | Name| Description | `xref:bsl/enable_shared_from_this.adoc[bsl::enable_shared_from_this<Signaler_Node<t_PROT>>]` | Mixin enabling an object to obtain a `shared_ptr` to itself. |=== == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlmt/Signaler_Node/2constructor.adoc[`Signaler_Node`] [.small]#[constructor]# | Create a `Signaler_Node` with no connected slots. | xref:BloombergLP/bdlmt/Signaler_Node/connect.adoc[`connect`] | Connect `slot` to this signaler in the specified `group`. | xref:BloombergLP/bdlmt/Signaler_Node/disconnectAllSlots.adoc[`disconnectAllSlots`] | Disconnect all slots connected to this signaler without waiting. | xref:BloombergLP/bdlmt/Signaler_Node/disconnectAllSlotsAndWait.adoc[`disconnectAllSlotsAndWait`] | Disconnect all slots and wait for in‐progress signals to finish. | xref:BloombergLP/bdlmt/Signaler_Node/disconnectGroup.adoc[`disconnectGroup`] | Disconnect all slots in `group` without waiting. | xref:BloombergLP/bdlmt/Signaler_Node/disconnectGroupAndWait.adoc[`disconnectGroupAndWait`] | Disconnect all slots in `group` and wait for in‐progress signals. | xref:BloombergLP/bdlmt/Signaler_Node/invoke.adoc[`invoke`] | Invoke all connected slots with the supplied arguments. | xref:BloombergLP/bdlmt/Signaler_Node/notifyDisconnected.adoc[`notifyDisconnected`] | Notify this signaler that the slot identified by `slotMapKey` disconnected. | xref:bsl/enable_shared_from_this/shared_from_this-0a2.adoc[`shared_from_this`] | `shared_from_this` overloads | xref:BloombergLP/bdlmt/Signaler_Node/slotCount.adoc[`slotCount`] | Return the number of slots connected to this signaler. | xref:BloombergLP/bdlmt/Signaler_Node/synchronizeWait.adoc[`synchronizeWait`] | Block until all signals currently being emitted on the signaler have completed. | xref:bsl/enable_shared_from_this/weak_from_this-0e.adoc[`weak_from_this`] | `weak_from_this` overloads |=== == Protected Member Functions [cols="1,4"] |=== | Name| Description | xref:bsl/enable_shared_from_this/operator_assign.adoc[`operator=`] | Return `*this`. This object is unchanged. Note that the specified `rhs` is not used. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#