27 TH1::AddDirectory(kFALSE);
28 auto titleguard =
MSGUser()->StartTitleWithGuard(
"TFileHelper");
29 infile =
new TFile(name.c_str(),
"READ");
32 MSGUser()->MSG_ERROR(
"can't open ROOT file ", name);
38 MSGUser()->MSG_ERROR(
"can't open ROOT file ", name);
45 TIter next(
infile->GetListOfKeys());
48 while ((key = (TKey *)next()))
50 if (TString(key->GetClassName()).Contains(
"TH1") ||
51 TString(key->GetClassName()).Contains(
"TH2") ||
52 TString(key->GetClassName()).Contains(
"TH3") ||
53 TString(key->GetClassName()).Contains(
"THn") ||
54 TString(key->GetClassName()).Contains(
"TProfile"))
56 std::unique_ptr<TObject> obj(key->ReadObj());
57 map_name_hist.emplace(std::pair<std::string, TKey *>(obj->GetName(), key));
60 if (TString(key->GetClassName()) ==
"TTree")
62 std::unique_ptr<TObject> obj(key->ReadObj());
63 map_name_tree.emplace(std::pair<std::string, TKey *>(obj->GetName(), key));
66 if (TString(key->GetClassName()).Contains(
"TGraph"))
68 std::unique_ptr<TObject> obj(key->ReadObj());
69 map_name_graph.emplace(std::pair<std::string, TKey *>(obj->GetName(), key));