|
ATLAS Offline Software
|
Go to the documentation of this file.
48 std::unique_ptr<ArenaAllocatorCreator> creator);
65 std::unique_ptr<ArenaAllocatorBase>
create (
size_t i);
70 typedef std::map<std::string, size_t>
map_t;
74 std::vector<std::unique_ptr<ArenaAllocatorCreator> >
m_creators;
79 typedef std::lock_guard<std::mutex>
lock_t;
103 std::unique_ptr<ArenaAllocatorCreator> creator)
138 return std::string::npos;
149 std::unique_ptr<ArenaAllocatorBase>
172 std::unique_ptr<ArenaAllocatorCreator> creator)
174 return m_impl->registerCreator (
name, std::move (creator));
JetConstituentVector::iterator iterator
std::unique_ptr< ArenaAllocatorBase > create(size_t i)
Create a new instance of an allocator.
static ArenaAllocatorRegistry * instance()
Return a pointer to the global ArenaAllocatorRegistry instance.
std::map< std::string, size_t > map_t
Map from names to indices.
ArenaAllocatorRegistry implementation class.
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.
Registry of allocator factories.
Common base class for arena allocator classes. See Arena.h for an overview of the arena-based memory ...
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.
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.
std::mutex m_mutex
Mutex to protect the contents.
#define ATLAS_THREAD_SAFE
size_t registerCreator(const std::string &name, std::unique_ptr< ArenaAllocatorCreator > creator)
Register a new allocator type.
Registry of allocator factories. See Arena.h for an overview of the arena-based memory allocators.
Define macros for attributes used to control the static checker.
std::vector< std::unique_ptr< ArenaAllocatorCreator > > m_creators
Vector of factory instances.
~ArenaAllocatorRegistryImpl()
Destructor.
std::lock_guard< std::mutex > lock_t