Logo ROOT  
Reference Guide
TEveChunkManager Class Reference

Vector-like container with chunked memory allocation.

Allocation chunk can accommodate fN atoms of byte-size fS each. The chunks themselves are TArrayCs and are stored in a std::vector<TArrayC*>. Holes in the structure are not supported, neither is removal of atoms. The structure can be Refit() to occupy a single contiguous array.

Definition at line 26 of file TEveChunkManager.h.


struct  iterator

Public Member Functions

 TEveChunkManager ()
 Default constructor. More...
 TEveChunkManager (Int_t atom_size, Int_t chunk_size)
 Constructor. More...
virtual ~TEveChunkManager ()
 Destructor. More...
Char_tAtom (Int_t idx) const
Int_t Capacity () const
Char_tChunk (Int_t chk) const
Int_t N () const
Int_t NAtoms (Int_t chk) const
Char_tNewAtom ()
Char_tNewChunk ()
 Allocate a new memory chunk and register it. More...
void Refit ()
 Refit the container so that all current data fits into a single chunk. More...
void Reset (Int_t atom_size, Int_t chunk_size)
 Empty the container and reset it with given atom and chunk sizes. More...
Int_t S () const
Int_t Size () const
Int_t VecSize () const

Protected Member Functions

void ReleaseChunks ()
 Release all memory chunks. More...

Protected Attributes

Int_t fCapacity
std::vector< TArrayC * > fChunks
Int_t fN
Int_t fS
Int_t fSize
Int_t fVecSize

Private Member Functions

 TEveChunkManager (const TEveChunkManager &)=delete
TEveChunkManageroperator= (const TEveChunkManager &)=delete

#include <TEveChunkManager.h>

Inheritance diagram for TEveChunkManager:

Constructor & Destructor Documentation

◆ TEveChunkManager() [1/3]

TEveChunkManager::TEveChunkManager ( const TEveChunkManager )

◆ TEveChunkManager() [2/3]

TEveChunkManager::TEveChunkManager ( )

Default constructor.

Call reset for initialization.

Definition at line 41 of file TEveChunkManager.cxx.

◆ TEveChunkManager() [3/3]

TEveChunkManager::TEveChunkManager ( Int_t  atom_size,
Int_t  chunk_size 


Definition at line 50 of file TEveChunkManager.cxx.

◆ ~TEveChunkManager()

TEveChunkManager::~TEveChunkManager ( )


Definition at line 59 of file TEveChunkManager.cxx.

Member Function Documentation

◆ Atom()

Char_t * TEveChunkManager::Atom ( Int_t  idx) const

Definition at line 59 of file TEveChunkManager.h.

◆ Capacity()

Int_t TEveChunkManager::Capacity ( ) const

Definition at line 57 of file TEveChunkManager.h.

◆ Chunk()

Char_t * TEveChunkManager::Chunk ( Int_t  chk) const

Definition at line 60 of file TEveChunkManager.h.

◆ N()

Int_t TEveChunkManager::N ( ) const

Definition at line 53 of file TEveChunkManager.h.

◆ NAtoms()

Int_t TEveChunkManager::NAtoms ( Int_t  chk) const

Definition at line 61 of file TEveChunkManager.h.

◆ NewAtom()

Char_t * TEveChunkManager::NewAtom ( )

Definition at line 111 of file TEveChunkManager.h.

◆ NewChunk()

Char_t * TEveChunkManager::NewChunk ( )

Allocate a new memory chunk and register it.

Definition at line 101 of file TEveChunkManager.cxx.

◆ operator=()

TEveChunkManager & TEveChunkManager::operator= ( const TEveChunkManager )

◆ Refit()

void TEveChunkManager::Refit ( )

Refit the container so that all current data fits into a single chunk.

Definition at line 79 of file TEveChunkManager.cxx.

◆ ReleaseChunks()

void TEveChunkManager::ReleaseChunks ( )

Release all memory chunks.

Definition at line 30 of file TEveChunkManager.cxx.

◆ Reset()

void TEveChunkManager::Reset ( Int_t  atom_size,
Int_t  chunk_size 

Empty the container and reset it with given atom and chunk sizes.

Definition at line 67 of file TEveChunkManager.cxx.

◆ S()

Int_t TEveChunkManager::S ( ) const

Definition at line 52 of file TEveChunkManager.h.

◆ Size()

Int_t TEveChunkManager::Size ( ) const

Definition at line 55 of file TEveChunkManager.h.

◆ VecSize()

Int_t TEveChunkManager::VecSize ( ) const

Definition at line 56 of file TEveChunkManager.h.

Member Data Documentation

◆ fCapacity

Int_t TEveChunkManager::fCapacity

Definition at line 38 of file TEveChunkManager.h.

◆ fChunks

std::vector<TArrayC*> TEveChunkManager::fChunks

Definition at line 40 of file TEveChunkManager.h.

◆ fN

Int_t TEveChunkManager::fN

Definition at line 34 of file TEveChunkManager.h.

◆ fS

Int_t TEveChunkManager::fS

Definition at line 33 of file TEveChunkManager.h.

◆ fSize

Int_t TEveChunkManager::fSize

Definition at line 36 of file TEveChunkManager.h.

◆ fVecSize

Int_t TEveChunkManager::fVecSize

Definition at line 37 of file TEveChunkManager.h.

Libraries for TEveChunkManager:

The documentation for this class was generated from the following files: