73 if (curlast == first-1) {
76 if (idnext == 0)
return idcur;
77 if (idnext->
GetFirst() > last+1)
return idcur;
83 if (curfirst == last+1) {
87 if (first < curfirst) {
111 Version_t version = TFree::Class_Version();
113 tobuf(buffer, version);
115 if (version > 1000) {
130 if (idcur == 0)
return 0;
134 if (nleft == nbytes) {
147 if (idcur1)
return idcur1;
161 std::cout <<
"Free Segment: "<<
fFirst<<
"\t"<<
fLast<<std::endl;
171 if (version > 1000) {
void frombuf(char *&buf, Bool_t *x)
Long64_t fFirst
First free word of segment.
void ls(Option_t *) const
List free segment contents.
Int_t Sizeof() const
return number of bytes occupied by this TFree on permanent storage
void SetLast(Long64_t last)
virtual void FillBuffer(char *&buffer)
Encode fre structure into output buffer.
TFree * AddFree(TList *lfree, Long64_t first, Long64_t last)
Add a new free segment to the list of free segments.
virtual TObject * After(const TObject *obj) const
Returns the object after object obj.
void tobuf(char *&buf, Bool_t x)
Long64_t fLast
Last free word of segment.
virtual TObject * Remove(TObject *obj)
Remove object from the list.
virtual void AddBefore(const TObject *before, TObject *obj)
Insert object before object before in the list.
virtual void ReadBuffer(char *&buffer)
Decode one free structure from input buffer.
virtual TObject * Last() const
Return the last object in the list. Returns 0 when list is empty.
void SetFirst(Long64_t first)
Long64_t GetFirst() const
virtual ~TFree()
Destructor.
TFree * GetBestFree(TList *lfree, Int_t nbytes)
Return the best free segment where to store nbytes.
virtual void Add(TObject *obj)