|
ATLAS Offline Software
|
Go to the documentation of this file.
18 #ifndef ATLALLOCATORS_ARENAHEAPALLOCATOR_H
19 #define ATLALLOCATORS_ARENAHEAPALLOCATOR_H
174 virtual void reset()
override;
185 virtual void erase() override final;
220 #include "AthAllocators/ArenaHeapAllocator.icc"
223 #endif // not ATLALLOCATORS_ARENAHEAPALLOCATOR_H
const Params & params() const
Return this Allocator's parameters.
ArenaHeapAllocator & operator=(const ArenaHeapAllocator &)=delete
void free(pointer p)
Free an element.
ArenaHeapAllocator(const ArenaHeapAllocator &)=delete
Don't allow copy construction or assignment.
virtual const std::string & name() const override
Return the name of this allocator.
bool const RAWDATA *ch2 const
initParams(size_t nblock=1000, const std::string &name="")
Constructor.
void slowClear()
Call clear() for all allocated elements.
Common functionality for block-oriented allocators.
virtual void erase() override final
Free all allocated elements and release memory back to the system.
void swap(ArenaHeapAllocator &other)
Swap.
virtual void reset() override
Free all allocated elements.
Common functionality for block-oriented allocators.
ArenaAllocatorBase::initParams< T, clear, no_ctor, no_dtor > Base
pointer m_freeptr
Pointer to the next free element.
Helper to initialize a parameters structure.
Helper to initialize a parameters structure.
char * pointer
Type for pointers to elements.
pointer refill()
Add more free elements to the pool, and allocate a new element.
ArenaHeapAllocator(const Params ¶ms)
Constructor.
pointer & link(pointer p) const
Return a reference to the link for an element.
ArenaAllocatorBase::Params params() const
Return an initialized parameters structure.
pointer allocate()
Allocate a new element.
virtual ~ArenaHeapAllocator()
Destructor.