/////////////////////////////////////////////////////////////////////////////// // /////////////////////////////////////////////////////////////////////////////// #include "TFile.h" #include "TTree.h" #include "TBranch.h" #include "OfflineMon/TMemoryUse.hh" ClassImp(TMemoryUse) TMemoryUse::Data_t* TMemoryUse::Data; //_____________________________________________________________________________ TMemoryUse::TMemoryUse() { } //_____________________________________________________________________________ int TMemoryUse::UpdateNtuple() { TFile* ntuple_file = new TFile(fNtupleFileName.Data(),"recreate"); TTree* tree = new TTree("memuse","memory use"); TBranch* br = tree->Branch("MemoryUse","TMemoryUse", &Data); Data = new TMemoryUse::Data_t(); //----------------------------------------------------------------------------- // read the data file and fill the ntuple //----------------------------------------------------------------------------- FILE* f = fopen(fInputDirName.Data(),"r"); char c[200]; int id1, id2; int n = 200; while (fgets(c,n,f) > 0) { sscanf(c,"%i %i %i %i %i %i %f", &Data->fNode, &id1, &id2, &Data->fRun, &Data->fEvent, &Data->fNumber, &Data->fVSize); if ((Data->fVSize < 0) || (Data->fVSize > 1500)) { // something is wrong printf("WRONG DATA : %s\n",c); } Data->fId = id1*100+id2; Data->fRss = 0.; Data->fMethod = ""; // printf("%i \n",Data->fRun); tree->Fill(); } ntuple_file->Write(); delete ntuple_file; return 0; }