class LManagedPtrBase : protected LAutoPtrBase< TPtrCleanupTraits< T, CleanupStrategyType >::BaseManagedType > |
Implementation base class - not designed for public inheritance or direct use.
Protected Member Functions | |
---|---|
LManagedPtrBase() | |
LManagedPtrBase(U *) | |
~LManagedPtrBase() | |
void | ReleaseResource() |
void | Swap(LManagedPtrBase &) |
LManagedPtrBase & | operator=(U *) |
Protected Member Type Definitions | |
---|---|
typedef | TPtrCleanupTraits< T, CleanupStrategyType >::BaseManagedType BaseManagedType |
typedef | TPtrCleanupTraits< T, CleanupStrategyType >::CleanupStrategy CleanupStrategy |
typedef | TPtrCleanupTraits< T, CleanupStrategyType >::ManagedType ManagedType |
Private Member Type Definitions | |
---|---|
typedef | LAutoPtrBase< typename TPtrCleanupTraits< T, CleanupStrategyType >::BaseManagedType > LAutoPtrBase |
Inherited Attributes | |
---|---|
LAutoPtrBase< TPtrCleanupTraits< T, CleanupStrategyType >::BaseManagedType >::iPtr |
~LManagedPtrBase | ( | ) | [protected, inline] |
Destructor. When automatic resource management is enabled, the destructor invokes the specified cleanup strategy for the managed pointer.
void | ReleaseResource | ( | ) | [protected, inline] |
If automatic resource management is enabled, the specified cleanup strategy is invoked for the managed pointer and the automatic resource management is then disabled. The underlying pointer is reset to NULL.
Get() == NULL
void | Swap | ( | LManagedPtrBase & | aManagedPtr | ) | [protected, inline] |
LManagedPtrBase & aManagedPtr |
typedef TPtrCleanupTraits< T, CleanupStrategyType >::BaseManagedType | BaseManagedType | [protected] |
typedef TPtrCleanupTraits< T, CleanupStrategyType >::CleanupStrategy | CleanupStrategy | [protected] |
typedef LAutoPtrBase< typename TPtrCleanupTraits< T, CleanupStrategyType >::BaseManagedType > | LAutoPtrBase | [private] |
typedef TPtrCleanupTraits< T, CleanupStrategyType >::ManagedType | ManagedType | [protected] |