TObjArray* PrepSummaryKMC(const char* sumf, int cls, const char* pref, const char* outF) { if (!gROOT->GetClass("KMCDetector")) gROOT->LoadMacro("KMCDetector.cxx+"); TFile* fl = TFile::Open(sumf); if (!fl) {printf("No file %s\n",sumf); return 0;} TObjArray* arrs = (TObjArray*)gDirectory->Get("trSum"); if (!arrs) {printf("No summary in file %s\n",sumf); return 0;} // TObjArray* sums = ProcessSummary(arrs,cls,pref); if (!sums) return 0; // if (outF) { TFile* flOut = TFile::Open(outF,"update"); if (!flOut) {printf("Failed to open output file %s\n",outF);} else { flOut->WriteObject(sums,sums->GetName(),"kSingleKey"); flOut->Close(); delete flOut; printf("Stored array %s in %s\n",sums->GetName(), outF); } } // return sums; }