ROOT
6.07/01
Reference Guide
|
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 27 of file TEveChunkManager.h.
Classes | |
struct | iterator |
Public Member Functions | |
TEveChunkManager () | |
Default constructor. More... | |
TEveChunkManager (Int_t atom_size, Int_t chunk_size) | |
Constructor. More... | |
virtual | ~TEveChunkManager () |
Destructor. More... | |
void | Reset (Int_t atom_size, Int_t chunk_size) |
Empty the container and reset it with given atom and chunk sizes. More... | |
void | Refit () |
Refit the container so that all current data fits into a single chunk. More... | |
Int_t | S () const |
Int_t | N () const |
Int_t | Size () const |
Int_t | VecSize () const |
Int_t | Capacity () const |
Char_t * | Atom (Int_t idx) const |
Char_t * | Chunk (Int_t chk) const |
Int_t | NAtoms (Int_t chk) const |
Char_t * | NewAtom () |
Char_t * | NewChunk () |
Allocate a new memory chunk and register it. More... | |
ClassDef (TEveChunkManager, 1) | |
Protected Member Functions | |
void | ReleaseChunks () |
Release all memory chunks. More... | |
Protected Attributes | |
Int_t | fS |
Int_t | fN |
Int_t | fSize |
Int_t | fVecSize |
Int_t | fCapacity |
std::vector< TArrayC * > | fChunks |
Private Member Functions | |
TEveChunkManager (const TEveChunkManager &) | |
TEveChunkManager & | operator= (const TEveChunkManager &) |
#include <TEveChunkManager.h>
|
private |
TEveChunkManager::TEveChunkManager | ( | ) |
Default constructor.
Call reset for initialization.
Definition at line 41 of file TEveChunkManager.cxx.
Constructor.
Definition at line 50 of file TEveChunkManager.cxx.
|
virtual |
Destructor.
Definition at line 59 of file TEveChunkManager.cxx.
Definition at line 60 of file TEveChunkManager.h.
Referenced by TEveStraightLineSet::AddMarker(), TEveChunkVector< T >::At(), TEveDigitSet::GetDigit(), NewAtom(), TEveChunkManager::iterator::next(), TEveStraightLineSetGL::ProcessSelection(), and TEveStraightLineSet::SetLine().
|
inline |
Definition at line 58 of file TEveChunkManager.h.
Definition at line 61 of file TEveChunkManager.h.
Referenced by TEveChunkManager::iterator::next(), and TEveDigitSet::ScanMinMaxValues().
TEveChunkManager::ClassDef | ( | TEveChunkManager | , |
1 | |||
) |
|
inline |
Definition at line 54 of file TEveChunkManager.h.
Referenced by TEveBoxSet::Reset().
Definition at line 62 of file TEveChunkManager.h.
Referenced by TEveChunkManager::iterator::next(), Refit(), and TEveDigitSet::ScanMinMaxValues().
|
inline |
Definition at line 112 of file TEveChunkManager.h.
Referenced by TEveStraightLineSet::AddLine(), TEveStraightLineSet::AddMarker(), and TEveDigitSet::NewDigit().
Char_t * TEveChunkManager::NewChunk | ( | ) |
Allocate a new memory chunk and register it.
Definition at line 101 of file TEveChunkManager.cxx.
Referenced by NewAtom().
|
private |
void TEveChunkManager::Refit | ( | ) |
Refit the container so that all current data fits into a single chunk.
Definition at line 79 of file TEveChunkManager.cxx.
Referenced by TEveDigitSet::RefitPlex(), and TEveStraightLineSetProjected::UpdateProjection().
|
protected |
Release all memory chunks.
Definition at line 30 of file TEveChunkManager.cxx.
Referenced by Refit(), Reset(), and ~TEveChunkManager().
Empty the container and reset it with given atom and chunk sizes.
Definition at line 67 of file TEveChunkManager.cxx.
Referenced by TEveBoxSet::Reset(), TEveQuadSet::Reset(), and TEveStraightLineSetProjected::UpdateProjection().
|
inline |
Definition at line 53 of file TEveChunkManager.h.
Referenced by TEveChunkManager::iterator::next(), and TEveDigitSet::ScanMinMaxValues().
|
inline |
Definition at line 56 of file TEveChunkManager.h.
Referenced by TEveStraightLineSet::AddLine(), TEveBoxSet::ComputeBBox(), TEveQuadSet::ComputeBBox(), TEveStraightLineSet::ComputeBBox(), TEveQuadSetGL::DirectDraw(), TEveStraightLineSetGL::DirectDraw(), TEveBoxSetGL::DirectDraw(), TEveDigitSet::NewDigit(), TEveDigitSet::ScanMinMaxValues(), and TEveStraightLineSetProjected::UpdateProjection().
|
inline |
Definition at line 57 of file TEveChunkManager.h.
Referenced by TEveChunkManager::iterator::next(), and TEveDigitSet::ScanMinMaxValues().
|
protected |
Definition at line 39 of file TEveChunkManager.h.
Referenced by Capacity(), NewAtom(), NewChunk(), Refit(), and Reset().
|
protected |
Definition at line 41 of file TEveChunkManager.h.
Referenced by Atom(), Chunk(), NewChunk(), Refit(), and ReleaseChunks().
|
protected |
Definition at line 35 of file TEveChunkManager.h.
Referenced by Atom(), N(), NAtoms(), NewChunk(), Refit(), and Reset().
|
protected |
Definition at line 34 of file TEveChunkManager.h.
Referenced by Atom(), NewChunk(), Refit(), Reset(), and S().
|
protected |
|
protected |
Definition at line 38 of file TEveChunkManager.h.
Referenced by NAtoms(), NewChunk(), Refit(), ReleaseChunks(), Reset(), and VecSize().