bool TrLikeDB::LoadPdfVer0(char* dirname) { TFile* file = TFile::Open(Form("%s/v5.00/TrLikeDBver0/PDFDBv2.root",dirname),"read"); if (!file) return false; int index = 0; int irig = 1; TH1* pdf = 0; fZmax = 28; for (int Z=1; Z<=fZmax; Z++) { for (int icat=0; icat<2; icat++) { // 2D Xi_{X} vs Xi_{Y} index = CreateIndex(0,Z,icat,0,irig); pdf = (TH1*) file->Get(Form("hLogXi2D_Z%d_Rig%d_Cat%d",Z,irig,icat+1)); if (!pdf) { printf("TrLikeDB::LoadPdfVer0-E error in loading PDFs (hLogXi2D_Z%d_Rig%d_Cat%d). Tracker integer charge could have some problem!\n",Z,irig,icat+1); file->Close(); break; } pdf->SetDirectory(0); AddPdf(pdf,index); for (int iside=0; iside<2; iside++) { // 1D Xi index = CreateIndex(1,Z,icat,iside,irig); pdf = (TH1*) file->Get(Form("hLogXi1D_Z%d_Rig%d_Cat%d_Side%d",Z,irig,icat+1,iside)); if (!pdf) { printf("TrLikeDB::LoadPdfVer0-E error in loading PDFs (hLogXi1D_Z%d_Rig%d_Cat%d_Side%d). Tracker integer charge could have some problem!\n",Z,irig,icat+1,iside); file->Close(); break; } pdf->SetDirectory(0); AddPdf(pdf,index); // 1D Eta index = CreateIndex(2,Z,icat,iside,irig); pdf = (TH1*) file->Get(Form("hLogEtaS1D_Z%d_Rig%d_Cat%d_Side%d",Z,irig,icat+1,iside)); if (!pdf) { printf("TrLikeDB::LoadPdfVer0-E error in loading PDFs (hLogEtaS1D_Z%d_Rig%d_Cat%d_Side%d). Tracker integer charge could have some problem!\n",Z,irig,icat+1,irig); file->Close(); break; } pdf->SetDirectory(0); AddPdf(pdf,index); } } } // create missing pdf here if needed ... not for now file->Close(); return true; }
void PdfManager::AddPdfs(const std::vector<Pdf*>& pdfs_){ for(size_t i = 0; i < pdfs_.size(); i++) AddPdf(pdfs_.at(i)); }