46 if (baseT < nsp->
Stat.st_atime)
return 0;
50 fsp->
Age =
static_cast<int>(baseT - nsp->
Stat.st_atime);
56 fsp->
Next = FSTab[0][n];
58 if (n > DYent) DYent = n;
75 k = (fsq->
Age >> Shift) & tMask;
77 if (Shift || !sortSZ) fsq->
Next = FSTab[j][k];
78 else fsq = Insert(fsq, FSTab[j][k]);
96 while(nowP && newSize < nowP->baseFile()->
Stat.st_size)
97 {prvP = nowP; nowP = nowP->
Next;}
101 if (prvP) {prvP->
Next = newP; newP->
Next = nowP;}
102 else newP->
Next = nowP;
106 return (prvP ? oldP : newP);
119 do {
while(SCent >= 0)
120 {
if ((fsp = FSTab[3][SCent]))
121 {
if (!( FSTab[3][SCent] = fsp->
Next)) SCent--;
129 while(MNent >= 0 && !fsp) fsp = FSTab[2][MNent--];
130 if (fsp) {FSTab[2][MNent+1]=0; SCent = Bin(fsp, 3, SCshift);
continue;}
131 while(HRent >= 0 && !fsp) fsp = FSTab[1][HRent--];
132 if (fsp) {FSTab[1][HRent+1]=0; MNent = Bin(fsp, 2, MNshift);
continue;}
133 while(DYent >= 0 && !fsp) fsp = FSTab[0][DYent--];
134 if (fsp) {FSTab[0][DYent+1]=0; HRent = Bin(fsp, 1, HRshift);
continue;}
146 int i, j, aBeg[4] = {DYent, HRent, MNent, SCent};
148 for (i = 0; i < 4; i++)
149 for (j = aBeg[i]; j >= 0; j--)
150 {
if ((fsp = FSTab[i][j]))
151 while((csp = fsp)) {fsp = fsp->
Next;
delete csp;}
161 void XrdFrmTSort::Reset()
166 memset(FSTab, 0,
sizeof(FSTab));
167 DYent = HRent = MNent = SCent = -1;
XrdOucNSWalk::NSEnt * baseFile()
int Add(XrdFrmFileset *fsp)