//_____________________________________________________ TLegendEntry* GFHistManager::AddHist(TH1* hist, Int_t layer, const char* legendTitle, const char* legOpt) { // add hist to 'layer'th list of histos (expands, if layer does not already exist!) if(!hist){ this->Warning("AddHist", "adding NULL pointer will be ignored!"); return NULL; } if(!this->CheckDepth("AddHist", layer)) return NULL; GFHistArray* newHist = new GFHistArray; newHist->Add(hist); TObjArray* layerHistArrays = static_cast<TObjArray*>(fHistArrays->At(layer)); layerHistArrays->Add(newHist); if(legendTitle){ TObjArray* legends = this->MakeLegends(layer); TLegend* legend = new TLegend(fLegendX1, fLegendY1, fLegendX2, fLegendY2); #if ROOT_VERSION_CODE < ROOT_VERSION(5,6,0) if (TString(gStyle->GetName()) == "Plain") legend->SetBorderSize(1); #endif legends->AddAtAndExpand(legend, layerHistArrays->IndexOf(newHist)); return legend->AddEntry(hist, legendTitle, legOpt ? legOpt : fgLegendEntryOption.Data()); } return NULL; }