NAME
corelinux::AbstractAllocator - AbstractAllocator is a abstract template which provides for the extension of memory managment on a TypeImpl object by TypeImpl object basis.
SYNOPSIS
#include <AbstractAllocator.hpp>
Inherits corelinux::Allocator.
Public Member Functions
AbstractAllocator (void)
Default constructor. AbstractAllocator (const AbstractAllocator &aRef)
Copy constructor. virtual ~AbstractAllocator (void)
Virtual destructor. AbstractAllocator & operator= (const AbstractAllocator &aRef)
Assingment operator overload. bool operator== (const AbstractAllocator &aRef) const
Equality operator overload. TypeImpl * createType (void)
Create type will invoke the allocateObject method of the derivation and will increment the number of allocations. void destroyType (TypeImpl *aPtr)
Destroy type will invoke the deallocateObject method of the derivation and will increment the number of deallocation.
Protected Member Functions
virtual TypeImpl * allocateObject (void)=0
allocates a object in the subclass virtual void deallocateObject (TypeImpl *)=0
de-allocates a object in the subclass
Detailed Description
template<class TypeImpl> class corelinux::AbstractAllocator< TypeImpl >
AbstractAllocator is a abstract template which provides for the extension of memory managment on a TypeImpl object by TypeImpl object basis.
The derivation needs to implement the allocateObject and deallocateObject mutators for memory management.
See also:
Allocator, AbstractFactory
Constructor & Destructor Documentation
template<class TypeImpl> corelinux::AbstractAllocator< TypeImpl >::AbstractAllocator (const AbstractAllocator< TypeImpl > & aRef) [inline]
Copy constructor. Parameters:
AbstractAllocator const reference
Member Function Documentation
template<class TypeImpl> virtual TypeImpl* corelinux::AbstractAllocator< TypeImpl >::allocateObject (void) [protected, pure virtual]
allocates a object in the subclass Returns:
TypeImpl pointer
Implemented in WallFactory.
template<class TypeImpl> TypeImpl* corelinux::AbstractAllocator< TypeImpl >::createType (void) [inline]
Create type will invoke the allocateObject method of the derivation and will increment the number of allocations. In the event of any exception, the allocation count will be adjusted.
Returns:
TypeImpl pointer
Exceptions:
any .RE
template<class TypeImpl> virtual void corelinux::AbstractAllocator< TypeImpl >::deallocateObject (TypeImpl *) [protected, pure virtual]
de-allocates a object in the subclass Parameters:
TypeImpl pointer
template<class TypeImpl> void corelinux::AbstractAllocator< TypeImpl >::destroyType (TypeImpl * aPtr) [inline]
Destroy type will invoke the deallocateObject method of the derivation and will increment the number of deallocation. In the event of any exception, the deallocation count will be adjusted
Parameters:
TypeImpl pointer
Exceptions:
any .RE
template<class TypeImpl> AbstractAllocator& corelinux::AbstractAllocator< TypeImpl >::operator= (const AbstractAllocator< TypeImpl > & aRef) [inline]
Assingment operator overload. Parameters:
AbstractAllocator const reference
Returns:
AbstractAllocator reference to self
template<class TypeImpl> bool corelinux::AbstractAllocator< TypeImpl >::operator== (const AbstractAllocator< TypeImpl > & aRef) const [inline]
Equality operator overload. Parameters:
AbstractAllocator const reference
Returns:
true if same identity
Author
Generated automatically by Doxygen for CoreLinux++ from the source code.