[#BloombergLP-bdlcc-ObjectCatalog_AutoCleanup] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlcc.adoc[bdlcc]::ObjectCatalog_AutoCleanup :relfileprefix: ../../ :mrdocs: This class provides a specialized proctor object that, upon destruction and unless the `release` method is called (1) removes a managed node from the `ObjectCatalog`, and (2) deallocates all associated memory as necessary. == Synopsis Declared in `<bdlcc_objectcatalog.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class TYPE> class ObjectCatalog_AutoCleanup; ---- == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlcc/ObjectCatalog_AutoCleanup/2constructor.adoc[`ObjectCatalog_AutoCleanup`] [.small]#[constructor]# | Create a proctor to manage the specified `catalog`. | xref:BloombergLP/bdlcc/ObjectCatalog_AutoCleanup/2destructor.adoc[`~ObjectCatalog_AutoCleanup`] [.small]#[destructor]# | Remove a managed node from the `ObjectCatalog` (by returning it to the catalog's free list or node pool, as specified in `manageNode`), deallocate all associated memory, and destroy this object. | xref:BloombergLP/bdlcc/ObjectCatalog_AutoCleanup/manageNode.adoc[`manageNode`] | Release from management the catalog node, if any, currently managed by this object and begin managing the specified catalog `node`. The specified `deallocateFlag` tells the destructor how to dispose of `node` if `node` is managed during the destruction of this object. | xref:BloombergLP/bdlcc/ObjectCatalog_AutoCleanup/release.adoc[`release`] | Release from management all resources currently managed by this object, if any. | xref:BloombergLP/bdlcc/ObjectCatalog_AutoCleanup/releaseNode.adoc[`releaseNode`] | Release from management the catalog node, if any, currently managed by this object, if any. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#