14 |
|
ClassImp(mithep::TreeWriter) |
15 |
|
|
16 |
|
//__________________________________________________________________________________________________ |
17 |
< |
TreeWriter::TreeWriter(const char *tname, Bool_t doreset) |
18 |
< |
: TNamed(tname,Form("%s written by mithep::TreeWriter", tname)), |
19 |
< |
fBaseURL("."), |
20 |
< |
fPrefix("mithep"), |
21 |
< |
fFileNumber(0), |
22 |
< |
fCompressLevel(9), |
23 |
< |
fDefBrSize(64*1024), |
24 |
< |
fDefSL(99), |
25 |
< |
fMaxSize((Long64_t)(0.99 * TTree::GetMaxTreeSize())), |
26 |
< |
fkMinFreeSpace(1024*1024), |
27 |
< |
fkMinAvgSize(10*1024), |
28 |
< |
fEvtObjNum(-1), |
29 |
< |
fIsInit(kFALSE), |
30 |
< |
fDoObjNumReset(doreset), |
31 |
< |
fFile(0), |
32 |
< |
fTrees(0) |
17 |
> |
TreeWriter::TreeWriter(const char *tname, Bool_t doreset) : |
18 |
> |
TNamed(tname,Form("%s written by mithep::TreeWriter", tname)), |
19 |
> |
fBaseURL("."), |
20 |
> |
fPrefix("mithep"), |
21 |
> |
fFileNumber(0), |
22 |
> |
fCompressLevel(9), |
23 |
> |
fDefBrSize(64*1024), |
24 |
> |
fDefSL(99), |
25 |
> |
fMaxSize((Long64_t)(0.99 * TTree::GetMaxTreeSize())), |
26 |
> |
fkMinFreeSpace(1024*1024), |
27 |
> |
fkMinAvgSize(10*1024), |
28 |
> |
fEvtObjNum(-1), |
29 |
> |
fIsInit(kFALSE), |
30 |
> |
fDoObjNumReset(doreset), |
31 |
> |
fFile(0), |
32 |
> |
fTrees(0) |
33 |
|
{ |
34 |
|
// Constructor. |
35 |
|
|
284 |
|
//------------------------------------------------------------------------------------------------- |
285 |
|
Long64_t TreeWriter::GetEntries(const char *tn) const |
286 |
|
{ |
287 |
< |
// |
287 |
> |
// Return entries of tree with given name. If no tree is given, return sum of entries |
288 |
> |
// of all trees. |
289 |
|
|
290 |
|
if (fTrees.GetEntries()==0) return -1; |
291 |
|
|
449 |
|
mt->SetAutoFill(b); |
450 |
|
} |
451 |
|
|
452 |
+ |
|
453 |
+ |
//------------------------------------------------------------------------------------------------- |
454 |
+ |
void TreeWriter::SetMaxSize(Long64_t s) |
455 |
+ |
{ |
456 |
+ |
// Set maximum file size. Check if this exceeds the ROOT file size and if, |
457 |
+ |
// print a warning and adjust it. |
458 |
+ |
|
459 |
+ |
if (s>=(Long64_t)(0.99 * TTree::GetMaxTreeSize())) { |
460 |
+ |
Long64_t news = (Long64_t)(s/0.99); |
461 |
+ |
Warning("SetMaxSize", "Maximum tree size increased from %lld to %lld", |
462 |
+ |
TTree::GetMaxTreeSize(), news); |
463 |
+ |
TTree::SetMaxTreeSize(news); |
464 |
+ |
} |
465 |
+ |
|
466 |
+ |
fMaxSize=s; |
467 |
+ |
} |
468 |
+ |
|
469 |
|
//__________________________________________________________________________________________________ |
470 |
|
void TreeWriter::StoreObject(const TObject *obj) |
471 |
|
{ |