[#BloombergLP-bdlm-MetricsRegistryRegistrationHandle]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlm.adoc[bdlm]::MetricsRegistryRegistrationHandle
:relfileprefix: ../../
:mrdocs:

This class implements a registration handle that provides RAII semantics for metric registration&period;

== Synopsis

Declared in `&lt;bdlm&lowbar;metricsregistry&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
class MetricsRegistryRegistrationHandle;
----

== Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bdlm/MetricsRegistryRegistrationHandle/2constructor-03.adoc[`MetricsRegistryRegistrationHandle`]         [.small]#[constructor]#
| Constructors
| xref:BloombergLP/bdlm/MetricsRegistryRegistrationHandle/2destructor.adoc[`&#126;MetricsRegistryRegistrationHandle`] [.small]#[destructor]#
| Unregister the metric collection callback associated with this handle (if `isRegistered` is `true`), and destroy this object&period;
| xref:BloombergLP/bdlm/MetricsRegistryRegistrationHandle/operator_assign.adoc[`operator&equals;`] 
| Assign to this handle the registration managed by `original`&period;
| xref:BloombergLP/bdlm/MetricsRegistryRegistrationHandle/isRegistered.adoc[`isRegistered`] 
| Return `true` if this handle has an associated registered metrics collection callback&period;
| xref:BloombergLP/bdlm/MetricsRegistryRegistrationHandle/swap.adoc[`swap`] 
| Exchange the associated metric collection callback registration with the one controlled by the specified `other` handle&period;
| xref:BloombergLP/bdlm/MetricsRegistryRegistrationHandle/unregister.adoc[`unregister`] 
| Unregister the metric from the associated registry&period;
|===


== Friends

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/bdlm/MetricsRegistry.adoc[BloombergLP::bdlm::MetricsRegistry]`
| This class implements a transferable registry of metrics&period;
|===


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