Logo ROOT   6.16/01
Reference Guide
List of all members | Public Member Functions | Public Attributes | List of all members
MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena Struct Reference

template<class RooSet_t, std::size_t POOLSIZE>
struct MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena

Definition at line 33 of file MemPoolForRooSets.h.

Public Member Functions

 Arena ()
 
 Arena (Arena &&other)
 
 Arena (const Arena &)=delete
 
 ~Arena ()
 
bool empty () const
 
bool hasSpace () const
 
bool inPool (const RooSet_t *const ptr) const
 
bool inPool (const void *const ptr) const
 
bool memoryOverlaps (const Arena &other) const
 
Arenaoperator= (Arena &&other)
 
Arenaoperator= (const Arena &)=delete
 
voidtryAllocate ()
 
bool tryDeallocate (void *ptr)
 
void tryFree (bool freeNonFull)
 

Public Attributes

std::set< std::size_t > deletedElements
 
const RooSet_t * memBegin
 
const RooSet_t * memEnd
 
RooSet_t * nextItem
 
RooSet_t * ownedMemory
 
std::size_t refCount
 

Constructor & Destructor Documentation

◆ Arena() [1/3]

template<class RooSet_t , std::size_t POOLSIZE>
MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::Arena ( )
inline

Definition at line 34 of file MemPoolForRooSets.h.

◆ Arena() [2/3]

template<class RooSet_t , std::size_t POOLSIZE>
MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::Arena ( const Arena )
delete

◆ Arena() [3/3]

template<class RooSet_t , std::size_t POOLSIZE>
MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::Arena ( Arena &&  other)
inline

Definition at line 44 of file MemPoolForRooSets.h.

◆ ~Arena()

template<class RooSet_t , std::size_t POOLSIZE>
MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::~Arena ( )
inline

Definition at line 81 of file MemPoolForRooSets.h.

Member Function Documentation

◆ empty()

template<class RooSet_t , std::size_t POOLSIZE>
bool MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::empty ( ) const
inline

Definition at line 105 of file MemPoolForRooSets.h.

◆ hasSpace()

template<class RooSet_t , std::size_t POOLSIZE>
bool MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::hasSpace ( ) const
inline

Definition at line 104 of file MemPoolForRooSets.h.

◆ inPool() [1/2]

template<class RooSet_t , std::size_t POOLSIZE>
bool MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::inPool ( const RooSet_t *const  ptr) const
inline

Definition at line 95 of file MemPoolForRooSets.h.

◆ inPool() [2/2]

template<class RooSet_t , std::size_t POOLSIZE>
bool MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::inPool ( const void *const  ptr) const
inline

Definition at line 99 of file MemPoolForRooSets.h.

◆ memoryOverlaps()

template<class RooSet_t , std::size_t POOLSIZE>
bool MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::memoryOverlaps ( const Arena other) const
inline

Definition at line 140 of file MemPoolForRooSets.h.

◆ operator=() [1/2]

template<class RooSet_t , std::size_t POOLSIZE>
Arena & MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::operator= ( Arena &&  other)
inline

Definition at line 60 of file MemPoolForRooSets.h.

◆ operator=() [2/2]

template<class RooSet_t , std::size_t POOLSIZE>
Arena & MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::operator= ( const Arena )
delete

◆ tryAllocate()

template<class RooSet_t , std::size_t POOLSIZE>
void * MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::tryAllocate ( )
inline

Definition at line 114 of file MemPoolForRooSets.h.

◆ tryDeallocate()

template<class RooSet_t , std::size_t POOLSIZE>
bool MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::tryDeallocate ( void ptr)
inline

Definition at line 122 of file MemPoolForRooSets.h.

◆ tryFree()

template<class RooSet_t , std::size_t POOLSIZE>
void MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::tryFree ( bool  freeNonFull)
inline

Definition at line 107 of file MemPoolForRooSets.h.

Member Data Documentation

◆ deletedElements

template<class RooSet_t , std::size_t POOLSIZE>
std::set<std::size_t> MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::deletedElements

Definition at line 151 of file MemPoolForRooSets.h.

◆ memBegin

template<class RooSet_t , std::size_t POOLSIZE>
const RooSet_t* MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::memBegin

Definition at line 146 of file MemPoolForRooSets.h.

◆ memEnd

template<class RooSet_t , std::size_t POOLSIZE>
const RooSet_t* MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::memEnd

Definition at line 148 of file MemPoolForRooSets.h.

◆ nextItem

template<class RooSet_t , std::size_t POOLSIZE>
RooSet_t* MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::nextItem

Definition at line 147 of file MemPoolForRooSets.h.

◆ ownedMemory

template<class RooSet_t , std::size_t POOLSIZE>
RooSet_t* MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::ownedMemory

Definition at line 145 of file MemPoolForRooSets.h.

◆ refCount

template<class RooSet_t , std::size_t POOLSIZE>
std::size_t MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena::refCount

Definition at line 149 of file MemPoolForRooSets.h.

Collaboration diagram for MemPoolForRooSets< RooSet_t, POOLSIZE >::Arena:
[legend]

The documentation for this struct was generated from the following file: