46 TDirectory* oldDir = gDirectory;
47 TFile* oldFile = gFile;
50 for (std::string sDet :
fvDets) {
51 fHistDt[sDet] =
new TH1I(Form(
"histDt%s", sDet.data()),
52 Form(
"Time difference to event seed, %s; dt [ns]", sDet.data()), 1000, -500., 500.);
53 fHistDtEvo[sDet] =
new TH2I(Form(
"histDtEvo%s", sDet.data()),
54 Form(
"Time difference to event seed vs TS, %s; TS []; dt [ns]", sDet.data()),
55 100, 0., 1000., 1000, -500., 500.);
58 new TH1I(Form(
"histDtToBmon%s", sDet.data()),
59 Form(
"Time difference to first/single BMon, %s; dt [ns]", sDet.data()), 1000, -500., 500.);
61 new TH2I(Form(
"histDtToBmonEvo%s", sDet.data()),
62 Form(
"Time difference to first/single BMon vs TS, %s; TS []; dt [ns]", sDet.data()),
63 100, 0., 1000., 1000, -500., 500.);
66 new TH1I(Form(
"histMul%s", sDet.data()), Form(
"Nb %s digis per event; N []", sDet.data()), 100, -0.5, 99.5);
68 new TH2I(Form(
"histDtMul%s", sDet.data()), Form(
"Dt Bmon vs Nb %s digis per event; dt [ns]; N []", sDet.data()),
69 1000, -500., 500., 100, -0.5, 99.5);
73 fCanvDt =
new TCanvas(
"canvDt",
"Time differences to event seed");
77 for (std::string sDet :
fvDets) {
86 fCanvDtEvo =
new TCanvas(
"canvDtEvo",
"Time differences to event seed vs TS");
90 for (std::string sDet :
fvDets) {
100 fCanvDtToBmon =
new TCanvas(
"canvDtToBmon",
"Time differences to event seed");
104 for (std::string sDet :
fvDets) {
113 fCanvDtToBmonEvo =
new TCanvas(
"canvDtToBmonEvo",
"Time differences to event seed vs TS");
117 for (std::string sDet :
fvDets) {
126 for (std::string sDet :
fvDets) {
127 fCanvMul[sDet] =
new TCanvas(Form(
"canvMul%s", sDet.data()), Form(
"Multiplicity %s", sDet.data()));
147 size_t numEventsInTs = 0;
148 std::string sDet =
"Bmon";
150 bool bSingleBmon =
false;
151 double_t dSingleBmonTime = 0.;
152 if (0 < event.fData.fBmon.Size()) {
153 if (1 == event.fData.fBmon.Size()) {
156 dSingleBmonTime =
event.fData.fBmon.fDigis[0].GetTime();
160 fHistMul[sDet]->Fill(event.fData.fBmon.Size());
161 for (
auto& digi : event.fData.fBmon.fDigis) {
162 double_t dDt = digi.GetTime() -
event.fTime;
165 fHistDtMul[sDet]->Fill(dDt, event.fData.fBmon.Size());
168 dDt = digi.GetTime() - dSingleBmonTime;
174 fHistMul[sDet]->Fill(event.fData.fSts.Size());
175 for (
auto& digi : event.fData.fSts.fDigis) {
176 double_t dDt = digi.GetTime() -
event.fTime;
179 fHistDtMul[sDet]->Fill(dDt, event.fData.fSts.Size());
181 dDt = digi.GetTime() - dSingleBmonTime;
188 fHistMul[sDet]->Fill(event.fData.fMuch.Size());
189 for (
auto& digi : event.fData.fMuch.fDigis) {
190 double_t dDt = digi.GetTime() -
event.fTime;
193 fHistDtMul[sDet]->Fill(dDt, event.fData.fMuch.Size());
195 dDt = digi.GetTime() - dSingleBmonTime;
202 fHistMul[sDet]->Fill(event.fData.fTrd.Size());
203 for (
auto& digi : event.fData.fTrd.fDigis) {
204 double_t dDt = digi.GetTime() -
event.fTime;
207 fHistDtMul[sDet]->Fill(dDt, event.fData.fTrd.Size());
209 dDt = digi.GetTime() - dSingleBmonTime;
216 fHistMul[sDet]->Fill(event.fData.fTrd2d.Size());
217 for (
auto& digi : event.fData.fTrd2d.fDigis) {
218 double_t dDt = digi.GetTime() -
event.fTime;
221 fHistDtMul[sDet]->Fill(dDt, event.fData.fTrd2d.Size());
223 dDt = digi.GetTime() - dSingleBmonTime;
230 fHistMul[sDet]->Fill(event.fData.fTof.Size());
231 for (
auto& digi : event.fData.fTof.fDigis) {
232 double_t dDt = digi.GetTime() -
event.fTime;
235 fHistDtMul[sDet]->Fill(dDt, event.fData.fTof.Size());
237 dDt = digi.GetTime() - dSingleBmonTime;
244 fHistMul[sDet]->Fill(event.fData.fRich.Size());
245 for (
auto& digi : event.fData.fRich.fDigis) {
246 double_t dDt = digi.GetTime() -
event.fTime;
249 fHistDtMul[sDet]->Fill(dDt, event.fData.fRich.Size());
251 dDt = digi.GetTime() - dSingleBmonTime;
258 fHistMul[sDet]->Fill(event.fData.fFsd.Size());
259 for (
auto& digi : event.fData.fFsd.fDigis) {
260 double_t dDt = digi.GetTime() -
event.fTime;
263 fHistDtMul[sDet]->Fill(dDt, event.fData.fFsd.Size());
265 dDt = digi.GetTime() - dSingleBmonTime;