124 virtual void Reset();
Int_t ReadBasketBytes(Long64_t pos, TFile *file)
Read basket buffers in memory and cleanup.
Bool_t fHeaderOnly
True when only the basket header must be read/written.
Bool_t fReadEntryOffset
!Set to true if offset array was read from a file.
Int_t fLastWriteBufferSize
! Size of the buffer last time we wrote it to disk
virtual void SetReadMode()
Set read mode of basket.
void Update(Int_t newlast)
Int_t ReadBasketBuffers(Long64_t pos, Int_t len, TFile *file)
Read basket buffers in memory and cleanup.
Int_t * fDisplacement
![fNevBuf] Displacement of entries in fBuffer(TKey)
Int_t GetNevBufSize() const
Int_t fBufferSize
fBuffer length in bytes
Int_t * fEntryOffset
[fNevBuf] Offset of entries in fBuffer(TKey); generated at runtime.
TBranch * fBranch
Pointer to the basket support branch.
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format...
Buffer base class used for serializing objects.
Int_t fNevBuf
Number of entries in basket.
void SetBranch(TBranch *branch)
static constexpr int kIOBitCount
#define ClassDef(name, id)
virtual void Reset()
Reset the basket to the starting state.
virtual Int_t WriteBuffer()
Write buffer of this basket on the current file.
Bool_t CanGenerateOffsetArray()
Determine whether we can generate the offset array when this branch is read.
Book space in a file, create I/O buffers, to fill them, (un)compress them.
TBranch * GetBranch() const
void InitializeCompressedBuffer(Int_t len, TFile *file)
Initialize the compressed buffer; either from the TTree or create a local one.
UChar_t fIOBits
!IO feature flags. Serialized in custom portion of streamer to avoid forward compat issues unless nee...
Bool_t fOwnsCompressedBuffer
! Whether or not we own the compressed buffer.
Int_t * GetDisplacement() const
virtual void AdjustSize(Int_t newsize)
Increase the size of the current fBuffer up to newsize.
Int_t ReadBasketBuffersUncompressedCase()
By-passing buffer unzipping has been requested and is possible (only 1 entry in this basket)...
Int_t GetEntryPointer(Int_t Entry)
Get pointer to buffer for internal entry.
Manages buffers for branches of a Tree.
TBuffer * fCompressedBufferRef
! Compressed buffer.
Int_t fNevBufSize
Length in Int_t of fEntryOffset OR fixed length of each entry if fEntryOffset is null! ...
Describe directory structure in memory.
virtual ~TBasket()
Basket destructor.
TBasket & operator=(const TBasket &)
TBasket objects are not copiable.
virtual void DeleteEntryOffset()
Delete fEntryOffset array.
virtual Int_t DropBuffers()
Drop buffers of this basket if it is not the current basket.
virtual void PrepareBasket(Long64_t)
Int_t fLast
Pointer to last used byte in basket.
Int_t * GetCalculatedEntryOffset()
Calculates the entry offset array, if possible.
Int_t GetBufferSize() const
A TTree object has a header with a name and a title.
Long64_t CopyTo(TFile *to)
Copy the basket of this branch onto the file to.
void SetNevBufSize(Int_t n)
Int_t ReadBasketBuffersUnzip(char *, Int_t, Bool_t, TFile *)
We always create the TBuffer for the basket but it hold the buffer from the cache.
A TTree is a list of TBranches.
TBasket()
Default contructor.
virtual void SetWriteMode()
Set write mode of basket.
Int_t LoadBasketBuffers(Long64_t pos, Int_t len, TFile *file, TTree *tree=0)
Load basket buffers in memory without unziping.
virtual void MoveEntries(Int_t dentries)
Remove the first dentries of this basket, moving entries at dentries to the start of the buffer...