14#ifndef TGO4BUFFERQUEUE_H
15#define TGO4BUFFERQUEUE_H
48 void AddBuffer(TBuffer *buffer, Bool_t clone=kFALSE);
60 void Clear(Option_t *opt =
"")
override;
102 void Realloc(TBuffer *buffer, Int_t oldsize, Int_t newsize);
static Int_t DecodeValueBuffer(TBuffer *buf)
Extract value from buffer that was created by CreateValueBuffer method.
TList * fxBufferList
List of preallocated buffer TBuffers which are used when TBuffer added to queue should be "cloned".
static TBuffer * CreateValueBuffer(UInt_t val)
Create a root buffer that contains a single value val.
TBuffer * NewEntry()
Create dummy buffer for queue.
void Clear(Option_t *opt="") override
Empty the queue and give free buffers back.
TBuffer * WaitBuffer()
Wait for buffer object from queue.
void InitBuffers()
Initialization of internal queue buffer.
Int_t fiMaxBuffers
Number of preallocated buffer TBuffers (maximum entries in fxBufferList).
void AddBuffer(TBuffer *buffer, Bool_t clone=kFALSE)
Add buffer pointer to queue.
void AddBufferFromObject(TObject *object)
Reconstruct a TObject queue entry from a given TBuffer pointer.
void Realloc(TBuffer *buffer, Int_t oldsize, Int_t newsize)
Reallocate buffer of TBuffer to newsize.
virtual ~TGo4BufferQueue()
TList * fxFreeList
List of buffers which are free for the next add.
TObject * WaitObjectFromBuffer()
Wait for buffer object from queue.
void FreeBuffer(TBuffer *buffer)
Free internal buffer to be re-used by the AddBuffer as clone method.
TGo4Queue(const char *name=nullptr)