|
ATLAS Offline Software
|
Go to the documentation of this file.
17 #ifndef ATLALLOCATORS_ARENAALLOCATORREGISTRY_H
18 #define ATLALLOCATORS_ARENAALLOCATORREGISTRY_H
30 class ArenaAllocatorBase;
31 class ArenaAllocatorRegistryImpl;
57 std::unique_ptr<ArenaAllocatorCreator> creator);
74 std::unique_ptr<ArenaAllocatorBase>
create (
size_t i);
85 std::unique_ptr<ArenaAllocatorRegistryImpl>
m_impl;
105 #endif // not ATLALLOCATORS_ARENAALLOCATORREGISTRY_H
static ArenaAllocatorRegistry * instance()
Return a pointer to the global ArenaAllocatorRegistry instance.
ArenaAllocatorRegistry implementation class.
ArenaAllocatorRegistry(const ArenaAllocatorRegistry &)
std::unique_ptr< ArenaAllocatorRegistryImpl > m_impl
The implementation object.
Provide an interface for creating an arena Allocator. See Arena.h for an overview of the arena-based ...
ArenaAllocatorRegistry()
Constructor. Called only by instance.
ArenaAllocatorRegistry & operator=(const ArenaAllocatorRegistry &)
Registry of allocator factories.
std::unique_ptr< ArenaAllocatorBase > create(size_t i)
Create a new instance of an allocator.
size_t lookup(const std::string &name)
Look up the index for an allocator type name.
~ArenaAllocatorRegistry()
Destructor. Called only by instance.
size_t registerCreator(const std::string &name, std::unique_ptr< ArenaAllocatorCreator > creator)
Register a new allocator type.