1 #include <ecl/calibration/eclEdgeAlgorithm.h>
2 #include <ecl/dbobjects/ECLCrystalCalib.h>
6 #include "TDirectory.h"
11 using namespace Calibration;
18 "Generate payloads ECLCrystalThetaEdge and ECLCrystalPhiEdge found by eclEdgeCollector"
29 auto eclCrystalX = getObjectPtr<TH1F>(
"eclCrystalX");
30 auto eclCrystalY = getObjectPtr<TH1F>(
"eclCrystalY");
31 auto eclCrystalZ = getObjectPtr<TH1F>(
"eclCrystalZ");
32 auto eclCrystalR = getObjectPtr<TH1F>(
"eclCrystalR");
33 auto eclCrystalTheta = getObjectPtr<TH1F>(
"eclCrystalTheta");
34 auto eclCrystalPhi = getObjectPtr<TH1F>(
"eclCrystalPhi");
35 auto eclCrystalDirTheta = getObjectPtr<TH1F>(
"eclCrystalDirTheta");
36 auto eclCrystalDirPhi = getObjectPtr<TH1F>(
"eclCrystalDirPhi");
37 auto eclCrystalEdgeTheta = getObjectPtr<TH1F>(
"eclCrystalEdgeTheta");
38 auto eclCrystalEdgePhi = getObjectPtr<TH1F>(
"eclCrystalEdgePhi");
41 TFile* histfile =
new TFile(
"eclEdgeAlgorithm.root",
"recreate");
46 eclCrystalTheta->Write();
47 eclCrystalPhi->Write();
48 eclCrystalDirTheta->Write();
49 eclCrystalDirPhi->Write();
50 eclCrystalEdgeTheta->Write();
51 eclCrystalEdgePhi->Write();
59 std::vector<float> tempTheta;
60 std::vector<float> tempUnc(8736, 0.);
61 for (
int cellID = 1; cellID <= 8736; cellID++) {
62 tempTheta.push_back(eclCrystalEdgeTheta->GetBinContent(cellID));
67 B2RESULT(
"eclEdgeAlgorithm: successfully stored payload ECLCrystalThetaEdge");
70 std::vector<float> tempPhi;
71 for (
int cellID = 1; cellID <= 8736; cellID++) {
72 tempPhi.push_back(eclCrystalEdgePhi->GetBinContent(cellID));
77 B2RESULT(
"eclEdgeAlgorithm: successfully stored payload ECLCrystalPhiEdge");