78#ifdef R__TRACK_BASKET_ALLOC_TIME
139#ifdef R__TRACK_BASKET_ALLOC_TIME
140 ULong64_t GetResetAllocationTime()
const {
return fResetAllocationTime; }
int Int_t
Signed integer 4 bytes (int).
unsigned char UChar_t
Unsigned Character 1 byte (unsigned char).
char Char_t
Character 1 byte (char).
long long Long64_t
Portable signed long integer 8 bytes.
unsigned long long ULong64_t
Portable unsigned long integer 8 bytes.
#define ClassDefOverride(name, id)
Int_t * fEntryOffset
[fNevBuf] Offset of entries in fBuffer(TKey); generated at runtime.
bool GetResetAllocationCount() const
Int_t GetEntryPointer(Int_t Entry)
Get pointer to buffer for internal entry.
void AdoptBuffer(TBuffer *user_buffer)
Adopt a buffer from an external entity.
bool fHeaderOnly
True when only the basket header must be read/written.
TBranch * fBranch
Pointer to the basket support branch.
Int_t GetNevBufSize() const
Long64_t CopyTo(TFile *to)
Copy the basket of this branch onto the file to.
Int_t * GetDisplacement() const
void InitializeCompressedBuffer(Int_t len, TFile *file)
Initialize the compressed buffer; either from the TTree or create a local one.
UChar_t fNextBufferSizeRecord
! Index into fLastWriteBufferSize of the last buffer written to disk
Int_t ReadBasketBuffersUnzip(char *, Int_t, bool, TFile *)
We always create the TBuffer for the basket but it hold the buffer from the cache.
void DisownBuffer()
Disown all references to the internal buffer - some other object likely now owns it.
Int_t fLastWriteBufferSize[3]
! Size of the buffer last three buffers we wrote it to disk
void SetBranch(TBranch *branch)
Int_t ReadBasketBuffers(Long64_t pos, Int_t len, TFile *file)
Read basket buffers in memory and cleanup.
UChar_t fIOBits
!IO feature flags. Serialized in custom portion of streamer to avoid forward compat issues unless nee...
virtual Int_t DropBuffers()
Drop buffers of this basket if it is not the current basket.
virtual void PrepareBasket(Long64_t)
virtual void MoveEntries(Int_t dentries)
Remove the first dentries of this basket, moving entries at dentries to the start of the buffer.
bool fOwnsCompressedBuffer
! Whether or not we own the compressed buffer.
void SetNevBufSize(Int_t n)
static constexpr int kIOBitCount
Int_t GetBufferSize() const
TBranch * GetBranch() const
TBasket()
Default constructor.
virtual void AdjustSize(Int_t newsize)
Increase the size of the current fBuffer up to newsize.
virtual void SetReadMode()
Set read mode of basket.
virtual void SetWriteMode()
Set write mode of basket.
Int_t ReadBasketBuffersUncompressedCase()
By-passing buffer unzipping has been requested and is possible (only 1 entry in this basket).
Int_t fBufferSize
fBuffer length in bytes
bool fReadEntryOffset
!Set to true if offset array was read from a file.
Int_t ReadBasketBytes(Long64_t pos, TFile *file)
Read basket buffers in memory and cleanup.
virtual void ReadResetBuffer(Int_t basketnumber)
Reset the read basket TBuffer memory allocation if needed.
bool fResetAllocation
! True if last reset re-allocated the memory
TBasket & operator=(const TBasket &)
TBasket objects are not copiable.
virtual Int_t WriteBuffer()
Write buffer of this basket on the current file.
Int_t LoadBasketBuffers(Long64_t pos, Int_t len, TFile *file, TTree *tree=nullptr)
Load basket buffers in memory without unziping.
~TBasket() override
Basket destructor.
void Update(Int_t newlast)
TBasket(const TBasket &)
TBasket objects are not copiable.
Int_t fNevBufSize
Length in Int_t of fEntryOffset OR fixed length of each entry if fEntryOffset is null!
Int_t fNevBuf
Number of entries in basket.
Int_t * GetCalculatedEntryOffset()
Calculates the entry offset array, if possible.
virtual void DeleteEntryOffset()
Delete fEntryOffset array.
TBuffer * fCompressedBufferRef
! Compressed buffer.
Int_t fLast
Pointer to last used byte in basket.
Int_t * fDisplacement
![fNevBuf] Displacement of entries in fBuffer(TKey)
bool CanGenerateOffsetArray()
Determine whether we can generate the offset array when this branch is read.
virtual void WriteReset()
Reset the write basket to the starting state.
A TTree is a list of TBranches.
Buffer base class used for serializing objects.
Describe directory structure in memory.
A file, usually with extension .root, that stores data and code in the form of serialized objects in ...
TKey(const TKey &)=delete
A TTree represents a columnar dataset.