Memory allocator for large amount of (small) objects. More...
#include <memory>
#include <stdexcept>
#include <cstdlib>
#include <algorithm>
#include <vector>
#include <iostream>
#include <array>
#include <typeinfo>
#include <string>
Go to the source code of this file.
Classes | |
class | lar::details::bulk_allocator::BulkAllocatorBase< T > |
A class managing a memory pool. More... | |
class | lar::memory_error |
Exception thrown when BulkAllocator-specific allocation errors happen. More... | |
class | lar::BulkAllocator< T > |
Aggressive allocator reserving a lot of memory in advance. More... | |
struct | lar::BulkAllocator< T >::rebind< U > |
class | lar::details::bulk_allocator::ReferenceCounter |
A simple reference counter, keep track of a number of users. More... | |
class | lar::details::bulk_allocator::BulkAllocatorBase< T > |
A class managing a memory pool. More... | |
class | lar::details::bulk_allocator::BulkAllocatorBase< T >::MemoryChunk_t |
Internal memory chunk; like a std::vector, but does not construct. More... | |
Namespaces | |
lar | |
LArSoft-specific namespace. | |
lar::details | |
Namespace hiding implementation details. | |
lar::details::bulk_allocator | |
Namespace specific to bulk allocator. | |
Functions | |
template<typename T > | |
std::string | lar::details::demangle () |
Demangles the name of a type. More... | |
template<typename T > | |
std::string | lar::details::demangle (const T &) |
Variables | |
constexpr bool | lar::details::bulk_allocator::bDebug = false |
Memory allocator for large amount of (small) objects.
Definition in file BulkAllocator.h.