Logging::RefCounted

NAME
SYNOPSIS
Detailed Description
Member Enumeration Documentation
Constructor & Destructor Documentation
Member Function Documentation
Member Data Documentation
Author

NAME

Logging::RefCounted −

SYNOPSIS

#include <loggingBaseLog.h>

Public Types

enum { destructiveCopy = false }

Public Member Functions

RefCounted ()

RefCounted (const RefCounted &rhs)

template<typename P1 > RefCounted (const RefCounted< P1 > &rhs)

P Clone (const P &val)

bool Release (const P &)

void Swap (RefCounted &rhs)

Private Attributes

unsigned int * pCount_

Detailed Description

template<class P> class Logging::RefCounted< P >

Because of a bug within the Loki smart pointer library which semi-randomly causes assert failures when exiting executables (i.e., at container shutdown), it it necessary to provide our own implementation of RefCounted which does not use the the Loki SmallObj class. RefCounted is the implementation of a classic external reference counting implementation of the OwnerShipPolicy used by loki::SmartPtr. It’s based on the class of the same name defined in $ACSROOT/include/lokiSmartPtr.h

Member Enumeration Documentation

template<class P> anonymous enum

Enumerator:

destructiveCopy

Constructor & Destructor Documentation

template<class P> Logging::RefCounted< P >::RefCounted () [inline]

References int(), and Logging::RefCounted< P >::pCount_.

template<class P> Logging::RefCounted< P >::RefCounted (const RefCounted< P > & rhs) [inline]

template<class P> template<typename P1 > Logging::RefCounted< P >::RefCounted (const RefCounted< P1 > & rhs) [inline]

Member Function Documentation

template<class P> P Logging::RefCounted< P >::Clone (const P & val) [inline]

References Logging::RefCounted< P >::pCount_.

template<class P> bool Logging::RefCounted< P >::Release (const P &) [inline]

References Logging::RefCounted< P >::pCount_.

template<class P> void Logging::RefCounted< P >::Swap (RefCounted< P > & rhs) [inline]

References Logging::RefCounted< P >::pCount_.

Member Data Documentation

template<class P> unsigned int* Logging::RefCounted< P >::pCount_ [private]

Referenced by Logging::RefCounted< P >::Clone(), Logging::RefCounted< P >::RefCounted(), Logging::RefCounted< P >::Release(), and Logging::RefCounted< P >::Swap().

Author

Generated automatically by Doxygen for ACS-2015.2 C++ API from the source code.