12 #ifndef ROOT_TEveChunkManager
13 #define ROOT_TEveChunkManager
82 fPlex(p), fCurrent(0), fAtomIndex(-1),
83 fNextChunk(0), fAtomsToGo(0), fSelection(0), fSelectionIterator() {}
85 fPlex(&p), fCurrent(0), fAtomIndex(-1),
86 fNextChunk(0), fAtomsToGo(0), fSelection(0), fSelectionIterator() {}
88 fPlex(i.fPlex), fCurrent(i.fCurrent), fAtomIndex(i.fAtomIndex),
89 fNextChunk(i.fNextChunk), fAtomsToGo(i.fAtomsToGo),
90 fSelection(i.fSelection), fSelectionIterator(i.fSelectionIterator) {}
100 void reset() { fCurrent = 0; fAtomIndex = -1; fNextChunk = fAtomsToGo = 0; }
const std::set< Int_t > * fSelection
Char_t * Atom(Int_t idx) const
Char_t * Chunk(Int_t chk) const
Char_t * NewChunk()
Allocate a new memory chunk and register it.
TEveChunkVector & operator=(const TEveChunkVector &)
virtual ~TEveChunkManager()
Destructor.
TEveChunkManager()
Default constructor.
Int_t NAtoms(Int_t chk) const
void Refit()
Refit the container so that all current data fits into a single chunk.
void Reset(Int_t chunk_size)
void Reset(Int_t atom_size, Int_t chunk_size)
Empty the container and reset it with given atom and chunk sizes.
iterator & operator=(const iterator &i)
Vector-like container with chunked memory allocation.
std::vector< TArrayC * > fChunks
ClassDef(TEveChunkVector, 1)
TEveChunkVector(Int_t chunk_size)
iterator(TEveChunkManager *p)
iterator(const iterator &i)
virtual ~TEveChunkVector()
TEveChunkManager & operator=(const TEveChunkManager &)
Bool_t next()
Go to next atom.
void ReleaseChunks()
Release all memory chunks.
ClassDef(TEveChunkManager, 1)
std::set< Int_t >::const_iterator fSelectionIterator
iterator(TEveChunkManager &p)