Reference

corelinux_AbstractAllocator(3)

AbstractAllocator is a abstract template which provides for the extension of memory managment on a TypeImpl object by TypeImpl object basis.

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.

History