Belle II Software  release-08-01-10
CDCTriggerNeuroDQMModule.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <framework/core/HistoModule.h>
12 
13 #include <framework/datastore/StoreArray.h>
14 #include <framework/datastore/StoreObjPtr.h>
15 #include <trg/cdc/dataobjects/CDCTriggerTrack.h>
16 #include <trg/cdc/dataobjects/CDCTriggerSegmentHit.h>
17 #include <trg/cdc/dataobjects/CDCTriggerMLPInput.h>
18 #include <tracking/dataobjects/RecoTrack.h>
19 #include <framework/dataobjects/BinnedEventT0.h>
20 
21 #include "TH1F.h"
22 #include "TH2F.h"
23 
24 namespace Belle2 {
34  class CDCTriggerNeuroDQMModule : public HistoModule { // <- derived from HistoModule class
35 
36  public:
40  virtual ~CDCTriggerNeuroDQMModule();
41 
43  virtual void initialize() override;
44  virtual void beginRun() override;
45  virtual void event() override;
46  virtual void endRun() override;
47  virtual void terminate() override;
48 
53  virtual void defineHisto() override;
54  struct TSLine {
55  const CDCTriggerSegmentHit* hit;
56  std::string strline;
57  //vector<const CDCTriggerTrack*> relin2dtracks;
58  //vector<const CDCTriggerTrack*> relin2dtracks;
59  explicit TSLine(const CDCTriggerSegmentHit& h)
60  {
61  hit = &h;
62  }
63  };
64  typedef std::vector<TSLine> TSLines;
65 
66  private:
68  void condFill(TH1F* histo, float value)
69  {
70  if (value != 0) {
71  histo->Fill(value);
72  }
73  }
75  unsigned getPattern(CDCTriggerTrack* track, std::string hitCollectionName)
76  {
77  unsigned pattern = 0;
78  for (const CDCTriggerSegmentHit& hit : track->getRelationsTo<CDCTriggerSegmentHit>(hitCollectionName)) {
79  unsigned sl = hit.getISuperLayer();
80  if (sl % 2 == 1) pattern |= (1 << ((sl - 1) / 2));
81  }
82  return pattern;
83  }
85  bool isValidPattern(unsigned pattern)
86  {
87  bool valid = false;
88  switch (pattern) {
89  case 7:
90  case 11:
91  case 13:
92  case 14:
93  case 15:
94  valid = true;
95  }
96  return valid;
97  }
98  std::string padto(std::string s, unsigned l)
99  {
100  if (s.size() < l) {
101  s.insert(s.begin(), l - s.size(), ' ');
102  }
103  return s;
104  }
105  std::string padright(std::string s, unsigned l)
106  {
107  if (s.size() < l) {
108  s.insert(s.end(), l - s.size(), ' ');
109  }
110  return s;
111  }
112  bool have_relation(const CDCTriggerTrack& track, const CDCTriggerSegmentHit& hit, std::string& arrayname)
113  {
114  bool related = false;
115  for (const CDCTriggerSegmentHit& ts : track.getRelationsTo<CDCTriggerSegmentHit>(arrayname)) {
116  if (&ts == &hit) {related = true;}
117  }
118  return related;
119  }
120  void sorted_insert(TSLines& lines, TSLine& line, std::string& arrayname, std::string& firstsortarray, std::string& secondsortarray)
121  {
122  bool inserted = false;
123  bool related = false;
124  TSLines::iterator it = lines.begin();
125  for (const CDCTriggerTrack& track : line.hit->getRelationsFrom<CDCTriggerTrack>(firstsortarray)) {
126  if (!inserted) {
127  for (TSLines::iterator i = lines.begin(); i < lines.end(); ++i) {
128  if (i->hit->getISuperLayer() % 2 != line.hit->getISuperLayer() % 2) {
129  continue;
130  }
131  if (have_relation(track, *(i->hit), arrayname)) {
132  it = i;
133  related = true;
134  if (i->hit->getSegmentID() > line.hit->getSegmentID()) {
135  inserted = true;
136  break;
137  }
138  }
139  }
140  } else { break; }
141  }
142  if (related) {
143  if (!inserted) {++it; }
144  lines.insert(it, line);
145  } else {
146  for (const CDCTriggerTrack& track : line.hit->getRelationsFrom<CDCTriggerTrack>(secondsortarray)) {
147  if (!inserted) {
148  for (TSLines::iterator i = it; i < lines.end(); ++i) {
149  if (i->hit->getISuperLayer() % 2 != line.hit->getISuperLayer() % 2) {
150  continue;
151  }
152  if (have_relation(track, *(i->hit), arrayname)) {
153  it = i;
154  related = true;
155  if (i->hit->getSegmentID() > line.hit->getSegmentID()) {
156  inserted = true;
157  break;
158  }
159  }
160  }
161  } else { break; }
162  }
163  if (related) {
164  if (!inserted) {++it; }
165  lines.insert(it, line);
166  } else {
167  lines.push_back(line);
168  }
169  }
170  }
177  // names for unpacked objects
190 
191  // names for simulated objects
193  std::string m_simNeuroTracksName;
206 
208  std::string m_simSegmentHitsName;
215 
217  std::string m_recoTracksName;
218 
219 
220  // store arrays for direct access
239 
250  // histograms for neurotrigger
251  TH1F* m_neuroHWOutZ = nullptr;
252  TH1F* m_neuroHWOutCosTheta = nullptr;
253  TH1F* m_neuroHWOutInvPt = nullptr;
254  TH1F* m_neuroHWOutPt = nullptr;
255  TH1F* m_neuroHWOutPhi0 = nullptr;
256  TH1F* m_neuroHWOutHitPattern = nullptr;
257  TH1F* m_neuroHWOutm_time = nullptr;
258  TH1F* m_neuroHWOutTrackCount = nullptr;
259  TH1F* m_neuroHWSector = nullptr;
261  TH1F* m_neuroHWInInvPt = nullptr;
262  TH1F* m_neuroHWInPhi0 = nullptr;
263  TH1F* m_neuroHWInm_time = nullptr;
264  TH1F* m_neuroHWInTrackCount = nullptr;
265  TH1F* m_neuroHWOutVsInTrackCount = nullptr;
267  TH1F* m_2DHWOutInvPt = nullptr;
268  TH1F* m_2DHWOutPhi0 = nullptr;
269  TH1F* m_2DHWOutm_time = nullptr;
270  TH1F* m_2DHWOutTrackCount = nullptr;
273  // hw TS hw 2D sw NN
274  TH1F* m_neuroSWOutZ = nullptr;
275  TH1F* m_neuroSWOutCosTheta = nullptr;
276  TH1F* m_neuroSWOutInvPt = nullptr;
277  TH1F* m_neuroSWOutPhi0 = nullptr;
278  TH1F* m_neuroSWOutHitPattern = nullptr;
279  TH1F* m_neuroSWOutTrackCount = nullptr;
280  TH1F* m_neuroSWSector = nullptr;
283  TH1F* m_2DSWOutInvPt = nullptr;
284  TH1F* m_2DSWOutPhi0 = nullptr;
285  TH1F* m_2DSWOutm_time = nullptr;
286  TH1F* m_2DSWOutTrackCount = nullptr;
288  // sw TS sw 2D sw NN
289  TH1F* m_neuroSWTSSW2DOutZ = nullptr;
290  TH1F* m_neuroSWTSSW2DOutCosTheta = nullptr;
291  TH1F* m_neuroSWTSSW2DOutInvPt = nullptr;
292  TH1F* m_neuroSWTSSW2DOutPhi0 = nullptr;
295  TH1F* m_neuroSWTSSW2DSector = nullptr;
297  // hw TS hw 2D sw NN vs hw NN
298  TH1F* m_neuroDeltaZ = nullptr;
299  TH1F* m_neuroDeltaTheta = nullptr;
300  TH2F* m_neuroScatterZ = nullptr;
301  TH2F* m_neuroScatterTheta = nullptr;
303  TH1F* m_neuroDeltaInputID = nullptr;
304  TH1F* m_neuroDeltaInputT = nullptr;
305  TH1F* m_neuroDeltaInputAlpha = nullptr;
306  TH1F* m_neuroDeltaTSID = nullptr;
307  TH1F* m_neuroDeltaSector = nullptr;
308  TH1F* m_simSameTS = nullptr;
309  TH1F* m_simDiffTS = nullptr;
311  // hw NN output for each quadrant
312  TH1F* m_neuroHWOutQuad5Z = nullptr;
313  TH1F* m_neuroHWOutQuad5CosTheta = nullptr;
314  TH1F* m_neuroHWOutQuad5Phi0 = nullptr;
315  TH1F* m_neuroHWOutQuad5InvPt = nullptr;
316  TH1F* m_neuroHWOutQuad0Z = nullptr;
317  TH1F* m_neuroHWOutQuad0CosTheta = nullptr;
318  TH1F* m_neuroHWOutQuad0Phi0 = nullptr;
319  TH1F* m_neuroHWOutQuad0InvPt = nullptr;
320  TH1F* m_neuroHWOutQuad1Z = nullptr;
321  TH1F* m_neuroHWOutQuad1CosTheta = nullptr;
322  TH1F* m_neuroHWOutQuad1Phi0 = nullptr;
323  TH1F* m_neuroHWOutQuad1InvPt = nullptr;
324  TH1F* m_neuroHWOutQuad2Z = nullptr;
325  TH1F* m_neuroHWOutQuad2CosTheta = nullptr;
326  TH1F* m_neuroHWOutQuad2Phi0 = nullptr;
327  TH1F* m_neuroHWOutQuad2InvPt = nullptr;
328  TH1F* m_neuroHWOutQuad3Z = nullptr;
329  TH1F* m_neuroHWOutQuad3CosTheta = nullptr;
330  TH1F* m_neuroHWOutQuad3Phi0 = nullptr;
331  TH1F* m_neuroHWOutQuad3InvPt = nullptr;
333  // hw NN received TS
334  TH1F* m_neuroHWInTSID = nullptr;
335  TH1F* m_neuroHWInTSCount = nullptr;
336  TH1F* m_neuroHWInTSPrioT_Layer0 = nullptr;
337  TH1F* m_neuroHWInTSPrioT_Layer1 = nullptr;
338  TH1F* m_neuroHWInTSPrioT_Layer2 = nullptr;
339  TH1F* m_neuroHWInTSPrioT_Layer3 = nullptr;
340  TH1F* m_neuroHWInTSPrioT_Layer4 = nullptr;
341  TH1F* m_neuroHWInTSPrioT_Layer5 = nullptr;
342  TH1F* m_neuroHWInTSPrioT_Layer6 = nullptr;
343  TH1F* m_neuroHWInTSPrioT_Layer7 = nullptr;
344  TH1F* m_neuroHWInTSPrioT_Layer8 = nullptr;
345  TH1F* m_neuroHWInTSFoundT_Layer0 = nullptr;
346  TH1F* m_neuroHWInTSFoundT_Layer1 = nullptr;
347  TH1F* m_neuroHWInTSFoundT_Layer2 = nullptr;
348  TH1F* m_neuroHWInTSFoundT_Layer3 = nullptr;
349  TH1F* m_neuroHWInTSFoundT_Layer4 = nullptr;
350  TH1F* m_neuroHWInTSFoundT_Layer5 = nullptr;
351  TH1F* m_neuroHWInTSFoundT_Layer6 = nullptr;
352  TH1F* m_neuroHWInTSFoundT_Layer7 = nullptr;
353  TH1F* m_neuroHWInTSFoundT_Layer8 = nullptr;
355  TH1F* m_neuroHWInTSPrioB_Layer0 = nullptr;
356  TH1F* m_neuroHWInTSPrioB_Layer1 = nullptr;
357  TH1F* m_neuroHWInTSPrioB_Layer2 = nullptr;
358  TH1F* m_neuroHWInTSPrioB_Layer3 = nullptr;
359  TH1F* m_neuroHWInTSPrioB_Layer4 = nullptr;
360  TH1F* m_neuroHWInTSPrioB_Layer5 = nullptr;
361  TH1F* m_neuroHWInTSPrioB_Layer6 = nullptr;
362  TH1F* m_neuroHWInTSPrioB_Layer7 = nullptr;
363  TH1F* m_neuroHWInTSPrioB_Layer8 = nullptr;
365  TH1F* m_neuroHWInTSLR_Layer0 = nullptr;
366  TH1F* m_neuroHWInTSLR_Layer1 = nullptr;
367  TH1F* m_neuroHWInTSLR_Layer2 = nullptr;
368  TH1F* m_neuroHWInTSLR_Layer3 = nullptr;
369  TH1F* m_neuroHWInTSLR_Layer4 = nullptr;
370  TH1F* m_neuroHWInTSLR_Layer5 = nullptr;
371  TH1F* m_neuroHWInTSLR_Layer6 = nullptr;
372  TH1F* m_neuroHWInTSLR_Layer7 = nullptr;
373  TH1F* m_neuroHWInTSLR_Layer8 = nullptr;
375  // hw NN selected TS
376  TH1F* m_neuroHWSelTSID = nullptr;
377  TH1F* m_neuroHWSelTSCount = nullptr;
378  TH1F* m_neuroHWSelTSPrioT_Layer0 = nullptr;
379  TH1F* m_neuroHWSelTSPrioT_Layer1 = nullptr;
380  TH1F* m_neuroHWSelTSPrioT_Layer2 = nullptr;
381  TH1F* m_neuroHWSelTSPrioT_Layer3 = nullptr;
382  TH1F* m_neuroHWSelTSPrioT_Layer4 = nullptr;
383  TH1F* m_neuroHWSelTSPrioT_Layer5 = nullptr;
384  TH1F* m_neuroHWSelTSPrioT_Layer6 = nullptr;
385  TH1F* m_neuroHWSelTSPrioT_Layer7 = nullptr;
386  TH1F* m_neuroHWSelTSPrioT_Layer8 = nullptr;
387  TH1F* m_neuroHWSelTSFoundT_Layer0 = nullptr;
388  TH1F* m_neuroHWSelTSFoundT_Layer1 = nullptr;
389  TH1F* m_neuroHWSelTSFoundT_Layer2 = nullptr;
390  TH1F* m_neuroHWSelTSFoundT_Layer3 = nullptr;
391  TH1F* m_neuroHWSelTSFoundT_Layer4 = nullptr;
392  TH1F* m_neuroHWSelTSFoundT_Layer5 = nullptr;
393  TH1F* m_neuroHWSelTSFoundT_Layer6 = nullptr;
394  TH1F* m_neuroHWSelTSFoundT_Layer7 = nullptr;
395  TH1F* m_neuroHWSelTSFoundT_Layer8 = nullptr;
397  TH1F* m_neuroHWSelTSPrioB_Layer0 = nullptr;
398  TH1F* m_neuroHWSelTSPrioB_Layer1 = nullptr;
399  TH1F* m_neuroHWSelTSPrioB_Layer2 = nullptr;
400  TH1F* m_neuroHWSelTSPrioB_Layer3 = nullptr;
401  TH1F* m_neuroHWSelTSPrioB_Layer4 = nullptr;
402  TH1F* m_neuroHWSelTSPrioB_Layer5 = nullptr;
403  TH1F* m_neuroHWSelTSPrioB_Layer6 = nullptr;
404  TH1F* m_neuroHWSelTSPrioB_Layer7 = nullptr;
405  TH1F* m_neuroHWSelTSPrioB_Layer8 = nullptr;
407  TH1F* m_neuroHWSelTSLR_Layer0 = nullptr;
408  TH1F* m_neuroHWSelTSLR_Layer1 = nullptr;
409  TH1F* m_neuroHWSelTSLR_Layer2 = nullptr;
410  TH1F* m_neuroHWSelTSLR_Layer3 = nullptr;
411  TH1F* m_neuroHWSelTSLR_Layer4 = nullptr;
412  TH1F* m_neuroHWSelTSLR_Layer5 = nullptr;
413  TH1F* m_neuroHWSelTSLR_Layer6 = nullptr;
414  TH1F* m_neuroHWSelTSLR_Layer7 = nullptr;
415  TH1F* m_neuroHWSelTSLR_Layer8 = nullptr;
418  // hw 2D received TS
419  //TH1F* m_2DHWInTSID = nullptr; /**< ID of 2D incoming axial track segments */
420  //TH1F* m_2DHWInTSCount = nullptr; /**< number of 2D incoming TS per event */
421  TH1F* m_2DHWInTSPrioT_Layer0 = nullptr;
422  TH1F* m_2DHWInTSPrioT_Layer2 = nullptr;
423  TH1F* m_2DHWInTSPrioT_Layer4 = nullptr;
424  TH1F* m_2DHWInTSPrioT_Layer6 = nullptr;
425  TH1F* m_2DHWInTSPrioT_Layer8 = nullptr;
426  TH1F* m_2DHWInTSFoundT_Layer0 = nullptr;
427  TH1F* m_2DHWInTSFoundT_Layer2 = nullptr;
428  TH1F* m_2DHWInTSFoundT_Layer4 = nullptr;
429  TH1F* m_2DHWInTSFoundT_Layer6 = nullptr;
430  TH1F* m_2DHWInTSFoundT_Layer8 = nullptr;
432  TH1F* m_2DHWInTSPrioB_Layer0 = nullptr;
433  TH1F* m_2DHWInTSPrioB_Layer2 = nullptr;
434  TH1F* m_2DHWInTSPrioB_Layer4 = nullptr;
435  TH1F* m_2DHWInTSPrioB_Layer6 = nullptr;
436  TH1F* m_2DHWInTSPrioB_Layer8 = nullptr;
437  TH1F* m_2DHWInTSLR_Layer0 = nullptr;
438  TH1F* m_2DHWInTSLR_Layer2 = nullptr;
439  TH1F* m_2DHWInTSLR_Layer4 = nullptr;
440  TH1F* m_2DHWInTSLR_Layer6 = nullptr;
441  TH1F* m_2DHWInTSLR_Layer8 = nullptr;
444  // hw TS selected by sw NN
445  TH1F* m_neuroSWSelTSID = nullptr;
446  TH1F* m_neuroSWSelTSCount = nullptr;
447  TH1F* m_neuroSWSelTSPrioT_Layer0 = nullptr;
448  TH1F* m_neuroSWSelTSPrioT_Layer1 = nullptr;
449  TH1F* m_neuroSWSelTSPrioT_Layer2 = nullptr;
450  TH1F* m_neuroSWSelTSPrioT_Layer3 = nullptr;
451  TH1F* m_neuroSWSelTSPrioT_Layer4 = nullptr;
452  TH1F* m_neuroSWSelTSPrioT_Layer5 = nullptr;
453  TH1F* m_neuroSWSelTSPrioT_Layer6 = nullptr;
454  TH1F* m_neuroSWSelTSPrioT_Layer7 = nullptr;
455  TH1F* m_neuroSWSelTSPrioT_Layer8 = nullptr;
456  TH1F* m_neuroSWSelTSFoundT_Layer0 = nullptr;
457  TH1F* m_neuroSWSelTSFoundT_Layer1 = nullptr;
458  TH1F* m_neuroSWSelTSFoundT_Layer2 = nullptr;
459  TH1F* m_neuroSWSelTSFoundT_Layer3 = nullptr;
460  TH1F* m_neuroSWSelTSFoundT_Layer4 = nullptr;
461  TH1F* m_neuroSWSelTSFoundT_Layer5 = nullptr;
462  TH1F* m_neuroSWSelTSFoundT_Layer6 = nullptr;
463  TH1F* m_neuroSWSelTSFoundT_Layer7 = nullptr;
464  TH1F* m_neuroSWSelTSFoundT_Layer8 = nullptr;
466  TH1F* m_neuroSWSelTSPrioB_Layer0 = nullptr;
467  TH1F* m_neuroSWSelTSPrioB_Layer1 = nullptr;
468  TH1F* m_neuroSWSelTSPrioB_Layer2 = nullptr;
469  TH1F* m_neuroSWSelTSPrioB_Layer3 = nullptr;
470  TH1F* m_neuroSWSelTSPrioB_Layer4 = nullptr;
471  TH1F* m_neuroSWSelTSPrioB_Layer5 = nullptr;
472  TH1F* m_neuroSWSelTSPrioB_Layer6 = nullptr;
473  TH1F* m_neuroSWSelTSPrioB_Layer7 = nullptr;
474  TH1F* m_neuroSWSelTSPrioB_Layer8 = nullptr;
476  TH1F* m_neuroSWSelTSLR_Layer0 = nullptr;
477  TH1F* m_neuroSWSelTSLR_Layer1 = nullptr;
478  TH1F* m_neuroSWSelTSLR_Layer2 = nullptr;
479  TH1F* m_neuroSWSelTSLR_Layer3 = nullptr;
480  TH1F* m_neuroSWSelTSLR_Layer4 = nullptr;
481  TH1F* m_neuroSWSelTSLR_Layer5 = nullptr;
482  TH1F* m_neuroSWSelTSLR_Layer6 = nullptr;
483  TH1F* m_neuroSWSelTSLR_Layer7 = nullptr;
484  TH1F* m_neuroSWSelTSLR_Layer8 = nullptr;
487  // sw TS incoming
488  TH1F* m_neuroSWTSSW2DInTSID = nullptr;
489  TH1F* m_neuroSWTSSW2DInTSCount = nullptr;
530  // sw TS selected
531  TH1F* m_neuroSWTSSW2DSelTSID = nullptr;
532  TH1F* m_neuroSWTSSW2DSelTSCount = nullptr;
573  // hw input vector
574  TH1F* m_neuroHWInputID_Layer0 = nullptr;
575  TH1F* m_neuroHWInputT_Layer0 = nullptr;
576  TH1F* m_neuroHWInputAlpha_Layer0 = nullptr;
577  TH1F* m_neuroHWInputID_Layer1 = nullptr;
578  TH1F* m_neuroHWInputT_Layer1 = nullptr;
579  TH1F* m_neuroHWInputAlpha_Layer1 = nullptr;
580  TH1F* m_neuroHWInputID_Layer2 = nullptr;
581  TH1F* m_neuroHWInputT_Layer2 = nullptr;
582  TH1F* m_neuroHWInputAlpha_Layer2 = nullptr;
583  TH1F* m_neuroHWInputID_Layer3 = nullptr;
584  TH1F* m_neuroHWInputT_Layer3 = nullptr;
585  TH1F* m_neuroHWInputAlpha_Layer3 = nullptr;
586  TH1F* m_neuroHWInputID_Layer4 = nullptr;
587  TH1F* m_neuroHWInputT_Layer4 = nullptr;
588  TH1F* m_neuroHWInputAlpha_Layer4 = nullptr;
589  TH1F* m_neuroHWInputID_Layer5 = nullptr;
590  TH1F* m_neuroHWInputT_Layer5 = nullptr;
591  TH1F* m_neuroHWInputAlpha_Layer5 = nullptr;
592  TH1F* m_neuroHWInputID_Layer6 = nullptr;
593  TH1F* m_neuroHWInputT_Layer6 = nullptr;
594  TH1F* m_neuroHWInputAlpha_Layer6 = nullptr;
595  TH1F* m_neuroHWInputID_Layer7 = nullptr;
596  TH1F* m_neuroHWInputT_Layer7 = nullptr;
597  TH1F* m_neuroHWInputAlpha_Layer7 = nullptr;
598  TH1F* m_neuroHWInputID_Layer8 = nullptr;
599  TH1F* m_neuroHWInputT_Layer8 = nullptr;
600  TH1F* m_neuroHWInputAlpha_Layer8 = nullptr;
602  // sw input vector (hw TS hw 2D)
603  TH1F* m_neuroSWInputID_Layer0 = nullptr;
604  TH1F* m_neuroSWInputT_Layer0 = nullptr;
605  TH1F* m_neuroSWInputAlpha_Layer0 = nullptr;
606  TH1F* m_neuroSWInputID_Layer1 = nullptr;
607  TH1F* m_neuroSWInputT_Layer1 = nullptr;
608  TH1F* m_neuroSWInputAlpha_Layer1 = nullptr;
609  TH1F* m_neuroSWInputID_Layer2 = nullptr;
610  TH1F* m_neuroSWInputT_Layer2 = nullptr;
611  TH1F* m_neuroSWInputAlpha_Layer2 = nullptr;
612  TH1F* m_neuroSWInputID_Layer3 = nullptr;
613  TH1F* m_neuroSWInputT_Layer3 = nullptr;
614  TH1F* m_neuroSWInputAlpha_Layer3 = nullptr;
615  TH1F* m_neuroSWInputID_Layer4 = nullptr;
616  TH1F* m_neuroSWInputT_Layer4 = nullptr;
617  TH1F* m_neuroSWInputAlpha_Layer4 = nullptr;
618  TH1F* m_neuroSWInputID_Layer5 = nullptr;
619  TH1F* m_neuroSWInputT_Layer5 = nullptr;
620  TH1F* m_neuroSWInputAlpha_Layer5 = nullptr;
621  TH1F* m_neuroSWInputID_Layer6 = nullptr;
622  TH1F* m_neuroSWInputT_Layer6 = nullptr;
623  TH1F* m_neuroSWInputAlpha_Layer6 = nullptr;
624  TH1F* m_neuroSWInputID_Layer7 = nullptr;
625  TH1F* m_neuroSWInputT_Layer7 = nullptr;
626  TH1F* m_neuroSWInputAlpha_Layer7 = nullptr;
627  TH1F* m_neuroSWInputID_Layer8 = nullptr;
628  TH1F* m_neuroSWInputT_Layer8 = nullptr;
629  TH1F* m_neuroSWInputAlpha_Layer8 = nullptr;
631  // sw input vector (sw TS sw 2D)
661  // reco
662  TH1F* m_RecoZ = nullptr;
663  TH1F* m_RecoCosTheta = nullptr;
664  TH1F* m_RecoInvPt = nullptr;
665  TH1F* m_RecoPhi = nullptr;
666  TH1F* m_RecoD0 = nullptr;
667  TH1F* m_RecoTrackCount = nullptr;
669  // reco values for tracks matched to hw NN tracks
670  TH1F* m_RecoHWZ = nullptr;
671  TH1F* m_RecoHWCosTheta = nullptr;
672  TH1F* m_RecoHWInvPt = nullptr;
673  TH1F* m_RecoHWPhi = nullptr;
674  TH1F* m_RecoHWD0 = nullptr;
675  TH2F* m_RecoHWZScatter = nullptr;
677  // hw neuro values for tracks matched to reco tracks
678  TH1F* m_neuroRecoHWOutZ = nullptr;
679  TH1F* m_neuroRecoHWOutCosTheta = nullptr;
680  TH1F* m_neuroRecoHWOutInvPt = nullptr;
681  TH1F* m_neuroRecoHWOutPhi0 = nullptr;
682  TH1F* m_neuroRecoHWOutHitPattern = nullptr;
683  TH1F* m_neuroRecoHWOutTrackCount = nullptr;
684  TH1F* m_neuroRecoHWSector = nullptr;
686  // hw accuracy
687  TH1F* m_DeltaRecoHWZ = nullptr;
688  TH1F* m_DeltaRecoHWCosTheta = nullptr;
689  TH1F* m_DeltaRecoHWInvPt = nullptr;
690  TH1F* m_DeltaRecoHWPhi = nullptr;
692  // reco values for tracks matched to sw NN tracks (hw TS, hw 2D)
693  TH1F* m_RecoSWZ = nullptr;
694  TH1F* m_RecoSWCosTheta = nullptr;
695  TH1F* m_RecoSWInvPt = nullptr;
696  TH1F* m_RecoSWPhi = nullptr;
697  TH1F* m_RecoSWD0 = nullptr;
698  TH2F* m_RecoSWZScatter = nullptr;
700  // sw neuro values for tracks matched to reco tracks
701  TH1F* m_neuroRecoSWOutZ = nullptr;
702  TH1F* m_neuroRecoSWOutCosTheta = nullptr;
703  TH1F* m_neuroRecoSWOutInvPt = nullptr;
704  TH1F* m_neuroRecoSWOutPhi0 = nullptr;
705  TH1F* m_neuroRecoSWOutHitPattern = nullptr;
706  TH1F* m_neuroRecoSWOutTrackCount = nullptr;
707  TH1F* m_neuroRecoSWSector = nullptr;
709  // sw accuracy (hw TS, hw 2D)
710  TH1F* m_DeltaRecoSWZ = nullptr;
711  TH1F* m_DeltaRecoSWCosTheta = nullptr;
712  TH1F* m_DeltaRecoSWInvPt = nullptr;
713  TH1F* m_DeltaRecoSWPhi = nullptr;
715  // reco values for tracks matched to sw NN tracks (sw TS, sw 2D)
716  TH1F* m_RecoSWTSSW2DZ = nullptr;
717  TH1F* m_RecoSWTSSW2DCosTheta = nullptr;
718  TH1F* m_RecoSWTSSW2DInvPt = nullptr;
719  TH1F* m_RecoSWTSSW2DPhi = nullptr;
720  TH1F* m_RecoSWTSSW2DD0 = nullptr;
721  TH2F* m_RecoSWTSSW2DZScatter = nullptr;
723  // sw neuro values for tracks matched to reco tracks (sw TS, sw 2D)
724  TH1F* m_neuroRecoSWTSSW2DOutZ = nullptr;
726  TH1F* m_neuroRecoSWTSSW2DOutInvPt = nullptr;
727  TH1F* m_neuroRecoSWTSSW2DOutPhi0 = nullptr;
729  nullptr;
731  TH1F* m_neuroRecoSWTSSW2DSector = nullptr;
733  // sw accuracy (sw TS, sw 2D)
734  TH1F* m_DeltaRecoSWTSSW2DZ = nullptr;
735  TH1F* m_DeltaRecoSWTSSW2DCosTheta = nullptr;
736  TH1F* m_DeltaRecoSWTSSW2DInvPt = nullptr;
737  TH1F* m_DeltaRecoSWTSSW2DPhi = nullptr;
738  };
739 
741 }
StoreArray< CDCTriggerMLPInput > m_simNeuroInputVector
StoreArray for neuro input vector from TSIM.
TH1F * m_neuroSWTSSW2DInputID_Layer6
simulated id input in layer 6
TH1F * m_neuroRecoSWOutInvPt
reco matched Inverse Pt distribution from simulation (hw TS hw 2D sw NN)
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer8
Priority bits of track segments in layer 8.
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer4
Priority bits of track segments in layer 4.
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer0
Priority bits of track segments in layer 0.
bool m_limitedoutput
Switch to supress output for dqm online module.
TH1F * m_neuroSWSelTSPrioB_Layer7
Priority bits of track segments in layer 7.
TH1F * m_neuroDeltaInputT
unpacked time input - TSIM time input
StoreArray< CDCTriggerSegmentHit > m_unpackedNeuroInputSegments
StoreArray for neuro input Track segments.
TH1F * m_neuroSWSelTSPrioT_Layer3
Priority time of track segments in layer 3.
TH1F * m_neuroHWInputID_Layer7
unpacked id input in layer 7
TH1F * m_neuroSWSelTSLR_Layer5
Left/Right of track segments in layer 5.
TH1F * m_neuroSWSelTSLR_Layer2
Left/Right of track segments in layer 2.
TH1F * m_neuroSWTSSW2DInputT_Layer6
simulated time input in layer 6
TH1F * m_neuroHWSelTSPrioT_Layer5
Priority time of selected track segments in layer 5.
TH1F * m_neuroSWSelTSPrioT_Layer1
Priority time of track segments in layer 1.
TH1F * m_2DHWInTSPrioB_Layer4
Priority bits of 2D track segments in layer 4.
StoreArray< CDCTriggerTrack > m_unpackedNeuroInput2DTracks
StoreArray for neuro input 2dfinder tracks.
TH1F * m_neuroHWInTSLR_Layer3
Left/Right of track segments in layer 3.
TH1F * m_neuroSWInputAlpha_Layer3
simulated alpha input in layer 3
StoreArray< CDCTriggerTrack > m_unpackedNeuroTracks
StoreArray for neuro tracks from unpacker.
TH1F * m_neuroSWOutInvPt
Inverse Pt distribution from simulation (hw TS hw 2D sw NN)
TH1F * m_neuroSWInputID_Layer7
simulated id input in layer 7
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer2
Found time of selected track segments in layer 2.
TH1F * m_2DHWOutInvPt
Inverse Pt of 2dtracks.
TH1F * m_neuroSWTSSW2DInputID_Layer2
simulated id input in layer 2
std::string m_unpackedSegmentHitsName
Name for TS hits from unpacker.
TH1F * m_neuroRecoHWOutZ
reco matched z distribution from unpacker
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer1
Found time of track segments in layer 1.
TH1F * m_neuroHWInPhi0
Phi0 of incoming 2dtrack.
TH1F * m_2DHWOutTrackCount
number of 2dtracks per event
TH1F * m_neuroSWSelTSFoundT_Layer3
Found time of track segments in layer 3.
int m_recoTrackMultiplicity
Select events with a specific RecoTrack track multiplicity.
TH1F * m_neuroSWTSSW2DInputAlpha_Layer2
simulated alpha input in layer 2
TH1F * m_neuroHWInTSPrioB_Layer8
Priority bits of track segments in layer 8.
TH1F * m_neuroHWInTSPrioT_Layer5
Priority time of track segments in layer 5.
TH1F * m_neuroSWInputID_Layer6
simulated id input in layer 6
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer0
Priority bits of track segments in layer 0.
TH1F * m_RecoInvPt
reconstructed inverse Pt
TH1F * m_neuroSWTSSW2DInTSLR_Layer2
Left/Right of track segments in layer 2.
TH1F * m_neuroHWInputAlpha_Layer4
unpacked alpha input in layer 4
TH1F * m_neuroSWTSSW2DSelTSLR_Layer3
Left/Right of track segments in layer 3.
TH1F * m_neuroSWSelTSPrioT_Layer8
Priority time of track segments in layer 8.
TH1F * m_neuroHWInTSFoundT_Layer6
Found time of track segments in layer 6.
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer8
Found time of selected track segments in layer 8.
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer7
Priority time of selected track segments in layer 7.
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer3
Priority bits of track segments in layer 3.
TH1F * m_neuroSWSelTSPrioB_Layer0
Priority bits of track segments in layer 0.
TH1F * m_neuroHWOutQuad1Z
z distribution from unpacker (quadrant 1)
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer5
Priority time of selected track segments in layer 5.
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer3
Found time of selected track segments in layer 3.
TH1F * m_neuroSWTSSW2DOutInvPt
Inverse Pt distribution from simulation (sw TS sw 2D sw NN)
TH1F * m_neuroHWInVs2DOutTrackCount
neuroHWInTrackCount - 2DHWOutTrackCountput
TH2F * m_neuroScatterTheta
unpacked theta vs TSIM theta, scatter plot
TH1F * m_neuroSWInputT_Layer5
simulated time input in layer 5
TH1F * m_2DHWInTSFoundT_Layer2
Found time of 2D track segments in layer 2.
TH2F * m_RecoHWZScatter
matched to HW reconstructed z scatter plot
TH1F * m_neuroSWSelTSPrioB_Layer1
Priority bits of track segments in layer 1.
TH1F * m_neuroSWTSSW2DInTSCount
number of TS per event
double m_maxRecoD0Dist
Select only RecoTracks with a maximum d0 distance to the z axis.
TH1F * m_neuroRecoSWTSSW2DOutPhi0
reco matched phi distribution from simulation (sw TS sw 2D sw NN)
TH1F * m_neuroRecoHWOutCosTheta
reco matched cos theta distribution from unpacker
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer2
Priority time of selected track segments in layer 2.
TH1F * m_neuroHWSelTSCount
number of selected TS per SL
TH1F * m_neuroSWOutPhi0
phi distribution from simulation (hw TS hw 2D sw NN)
TH1F * m_DeltaRecoSWTSSW2DInvPt
matched to SWTSSW2DSWNN reconstructed inverse Pt
TH1F * m_neuroHWInTSLR_Layer2
Left/Right of track segments in layer 2.
TH1F * m_neuroHWInTSPrioT_Layer4
Priority time of track segments in layer 4.
TH1F * m_neuroRecoHWOutHitPattern
reco matched stereo hit pattern from unpacker
TH1F * m_neuroHWInm_time
m_time distribution from incoming 2dtracks
TH1F * m_RecoTrackCount
number of reconstructed tracks per event
TH1F * m_neuroSWSelTSLR_Layer6
Left/Right of track segments in layer 6.
TH1F * m_2DHWInTSFoundT_Layer4
Found time of 2D track segments in layer 4.
bool m_showRecoTracks
Switch to turn on a comparison with the reconstruction.
TH1F * m_neuroDeltaTheta
unpacked theta - TSIM theta
TH1F * m_neuroRecoSWTSSW2DOutInvPt
reco matched Inverse Pt distribution from simulation (sw TS sw 2D sw NN)
TH1F * m_neuroSWSelTSFoundT_Layer5
Found time of track segments in layer 5.
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer4
Found time of selected track segments in layer 4.
TH1F * m_RecoSWTSSW2DInvPt
matched to SWTSSW2DSWNN reconstructed inverse Pt
TH1F * m_2DHWInTSLR_Layer4
Left/Right of 2D track segments in layer 4.
TH1F * m_2DHWInTSFoundT_Layer0
Found time of 2D track segments in layer 0.
TH1F * m_neuroSWTSSW2DInputT_Layer1
simulated time input in layer 1
TH1F * m_neuroHWOutZ
z distribution of unpacked neuro tracks
TH1F * m_neuroHWInputT_Layer2
unpacked time input in layer 2
TH1F * m_neuroSWTSSW2DInputID_Layer5
simulated id input in layer 5
TH1F * m_DeltaRecoSWTSSW2DCosTheta
matched to SWTSSW2DSWNN reconstructed cos(theta)
virtual void initialize() override
Module functions.
TH1F * m_neuroSWTSSW2DInTSLR_Layer0
Left/Right of track segments in layer 0.
TH1F * m_neuroHWInInvPt
Inverse Pt distribution from incoming 2dtrack.
TH1F * m_neuroRecoHWOutInvPt
reco matched Inverse Pt distribution from unpacker
TH1F * m_neuroHWOutQuad2InvPt
Inverse Pt distribution from unpacker (quadrant 2)
TH1F * m_neuroSWSector
NN sector from simulation (hw TS hw 2D sw NN)
TH1F * m_neuroSWSelTSLR_Layer7
Left/Right of track segments in layer 7.
TH1F * m_neuroHWSelTSFoundT_Layer1
Found time of selected track segments in layer 1.
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer1
Priority bits of track segments in layer 1.
TH1F * m_neuroHWInputAlpha_Layer3
unpacked alpha input in layer 3
TH1F * m_neuroSWTSSW2DInputAlpha_Layer6
simulated alpha input in layer 6
TH1F * m_neuroHWSelTSFoundT_Layer6
Found time of selected track segments in layer 6.
TH1F * m_neuroHWInTSFoundT_Layer2
Found time of track segments in layer 2.
TH1F * m_neuroHWOutQuad0Phi0
phi distribution from unpacker (quadrant 0)
TH1F * m_DeltaRecoHWInvPt
matched to HW reconstructed inverse Pt
TH1F * m_neuroSWInputT_Layer0
simulated time input in layer 0
TH1F * m_neuroHWInTSPrioT_Layer1
Priority time of track segments in layer 1.
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer6
Priority time of track segments in layer 6.
TH1F * m_neuroSWInputAlpha_Layer1
simulated alpha input in layer 1
TH1F * m_neuroSWOutTrackCount
number of simulated tracks per event (hw TS hw 2D sw NN)
TH1F * m_neuroSWTSSW2DOutTrackCount
number of simulated tracks per event (sw TS sw 2D sw NN)
TH1F * m_neuroHWSelTSPrioB_Layer5
Priority bits of track segments in layer 5.
TH1F * m_neuroHWSelTSFoundT_Layer4
Found time of selected track segments in layer 4.
TH1F * m_neuroSWTSSW2DInputAlpha_Layer3
simulated alpha input in layer 3
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer4
Found time of track segments in layer 4.
TH1F * m_2DHWInTSFoundT_Layer8
Found time of 2D track segments in layer 8.
TH1F * m_2DHWInTSPrioT_Layer8
Priority time of 2D track segments in layer 8.
void condFill(TH1F *histo, float value)
Fill a histogram only with non-zero values.
TH1F * m_simSameTS
number of TS selected in both, unpacked and TSIM tracks
TH1F * m_neuroHWInTSFoundT_Layer8
Found time of track segments in layer 8.
TH1F * m_neuroHWSelTSPrioB_Layer3
Priority bits of track segments in layer 3.
TH1F * m_neuroSWInputID_Layer8
simulated id input in layer 8
TH1F * m_2DHWInTSFoundT_Layer6
Found time of 2D track segments in layer 6.
TH1F * m_neuroRecoSWOutTrackCount
reco matched number of simulated tracks per event (hw TS hw 2D sw NN)
TH1F * m_neuroSWInputAlpha_Layer6
simulated alpha input in layer 6
TH1F * m_neuroSWTSSW2DInputT_Layer3
simulated time input in layer 3
TH1F * m_2DHWInTSPrioB_Layer8
Priority bits of 2D track segments in layer 8.
TH1F * m_neuroSWTSSW2DInTSLR_Layer3
Left/Right of track segments in layer 3.
TH1F * m_neuroHWOutQuad1InvPt
Inverse Pt distribution from unpacker (quadrant 1)
TH1F * m_neuroSWSelTSPrioT_Layer0
Priority time of track segments in layer 0.
virtual void event() override
Function to process event record.
TH1F * m_RecoSWPhi
matched to SW reconstructed phi
TH1F * m_RecoSWD0
matched to SW reconstructed d0
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer3
Found time of track segments in layer 3.
TH1F * m_neuroRecoSWTSSW2DOutHitPattern
reco matched stereo hit pattern of simulated neuro tracks (sw TS sw 2D sw NN)
TH1F * m_neuroHWInTSLR_Layer5
Left/Right of track segments in layer 5.
StoreArray< CDCTriggerSegmentHit > m_simSegmentHits
StoreArray for simulated TS hits.
TH1F * m_neuroHWInTSLR_Layer6
Left/Right of track segments in layer 6.
TH1F * m_neuroSWSelTSPrioT_Layer6
Priority time of track segments in layer 6.
TH1F * m_neuroHWInputAlpha_Layer2
unpacked alpha input in layer 2
TH1F * m_RecoHWD0
matched to HW reconstructed d0
TH1F * m_neuroSWSelTSFoundT_Layer0
Found time of track segments in layer 0.
TH1F * m_neuroSWTSSW2DSelTSLR_Layer2
Left/Right of track segments in layer 2.
TH1F * m_neuroHWInTSPrioB_Layer1
Priority bits of track segments in layer 1.
TH1F * m_neuroHWInputID_Layer4
unpacked id input in layer 4
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer6
Found time of selected track segments in layer 6.
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer5
Found time of selected track segments in layer 5.
std::string m_simSegmentHitsName
Name for simulated TS hits.
TH1F * m_neuroSWTSSW2DSelTSID
ID of incoming track segments.
TH1F * m_neuroSWInputT_Layer7
simulated time input in layer 7
TH1F * m_neuroHWSelTSPrioB_Layer6
Priority bits of track segments in layer 6.
TH1F * m_neuroSWTSSW2DInTSLR_Layer1
Left/Right of track segments in layer 1.
TH1F * m_neuroSWSelTSID
ID of incoming track segments.
TH1F * m_neuroSWTSSW2DInTSLR_Layer4
Left/Right of track segments in layer 4.
TH1F * m_neuroSWTSSW2DSector
NN sector from simulation (sw TS sw 2D sw NN)
TH1F * m_neuroHWInTSPrioB_Layer5
Priority bits of track segments in layer 5.
TH1F * m_neuroSWTSSW2DInputID_Layer3
simulated id input in layer 3
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer7
Priority time of track segments in layer 7.
TH1F * m_neuroSWSelTSPrioT_Layer4
Priority time of track segments in layer 4.
TH1F * m_neuroSWInputID_Layer0
simulated id input in layer 0
TH1F * m_neuroRecoSWOutHitPattern
reco matched stereo hit pattern of simulated neuro tracks (hw TS hw 2D sw NN)
TH1F * m_neuroSWTSSW2DSelTSLR_Layer8
Left/Right of track segments in layer 8.
std::string m_unpacked2DTracksName
Name for 2D finder tracks from unpacker.
TH1F * m_neuroHWSelTSPrioT_Layer2
Priority time of selected track segments in layer 2.
TH1F * m_neuroHWInTSFoundT_Layer7
Found time of track segments in layer 7.
TH2F * m_RecoSWTSSW2DZScatter
matched to SWTSSW2DSWNN reconstructed z scatter plot
TH1F * m_simDiffTS
number of TS selcted in TSIM but not in unpacked
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer6
Priority bits of track segments in layer 6.
TH1F * m_neuroHWInTSPrioB_Layer4
Priority bits of track segments in layer 4.
TH1F * m_neuroSWOutZ
z distribution from simulation (hw TS hw 2D sw NN)
virtual void endRun() override
Function to process end_run record.
TH1F * m_neuroHWSelTSPrioB_Layer7
Priority bits of track segments in layer 7.
TH1F * m_neuroSWTSSW2DInputAlpha_Layer5
simulated alpha input in layer 5
TH1F * m_2DSWOutInvPt
Inverse Pt of 2dtracks (sw TS sw 2D)
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer7
Found time of track segments in layer 7.
TH1F * m_neuroHWInputT_Layer1
unpacked time input in layer 1
TH1F * m_neuroHWInputID_Layer3
unpacked id input in layer 3
TH1F * m_neuroSWInputAlpha_Layer0
simulated alpha input in layer 0
TH1F * m_neuroSWTSSW2DOutHitPattern
stereo hit pattern of simulated neuro tracks (sw TS sw 2D sw NN)
std::string m_unpackedNeuroInputSegmentsName
Name for neuro input Track segments.
TH1F * m_neuroHWInTSPrioT_Layer2
Priority time of track segments in layer 2.
TH1F * m_neuroSWInputID_Layer4
simulated id input in layer 4
TH1F * m_RecoSWCosTheta
matched to SW reconstructed cos(theta)
TH1F * m_2DSWOutm_time
m_time 2dtracks (sw TS sw 2D)
TH1F * m_2DHWInTSPrioB_Layer0
Priority bits of 2D track segments in layer 0.
TH1F * m_2DSWOutTrackCount
number of 2dtracks per event (sw TS sw 2D)
virtual void terminate() override
Function to terminate module.
TH1F * m_neuroHWSelTSPrioT_Layer7
Priority time of selected track segments in layer 7.
TH1F * m_neuroHWSelTSPrioT_Layer0
Priority time of selected track segments in layer 0.
TH2F * m_RecoSWZScatter
matched to SW reconstructed z scatter plot
std::string m_unpackedNeuroInput2DTracksName
Name for neuro input 2d finder tracks.
TH1F * m_neuroHWInputT_Layer0
unpacked time input in layer 0
TH1F * m_neuroHWInputID_Layer6
unpacked id input in layer 6
TH1F * m_neuroRecoSWTSSW2DOutTrackCount
reco matched number of simulated tracks per event (sw TS sw 2D sw NN)
TH1F * m_neuroHWOutQuad0CosTheta
cos theta distribution from unpacker (quadrant 0)
TH1F * m_neuroSWTSSW2DSelTSLR_Layer4
Left/Right of track segments in layer 4.
TH1F * m_neuroSWSelTSPrioB_Layer8
Priority bits of track segments in layer 8.
TH1F * m_neuroHWInTSFoundT_Layer1
Found time of track segments in layer 1.
TH1F * m_neuroHWOutPt
Pt distribution of unpacked neuro tracks.
TH1F * m_neuroHWSelTSLR_Layer6
Left/Right of track segments in layer 6.
TH1F * m_neuroHWOutQuad3Phi0
phi distribution from unpacker (quadrant 3)
TH1F * m_neuroHWInputAlpha_Layer7
unpacked alpha input in layer 7
TH1F * m_neuroSWInputT_Layer8
simulated time input in layer 8
TH1F * m_neuroHWInTSFoundT_Layer0
Found time of track segments in layer 0.
TH1F * m_neuroHWOutQuad5CosTheta
cos theta distribution from unpacker (no quadrant set)
TH1F * m_2DSWOutPhi0
Phi0 of 2dtracks (sw TS sw 2D)
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer6
Priority time of selected track segments in layer 6.
StoreArray< CDCTriggerMLPInput > m_unpackedNeuroInputVector
StoreArray for neuro input vector from unpacker.
TH1F * m_neuroSWInputT_Layer6
simulated time input in layer 6
StoreArray< CDCTriggerMLPInput > m_simNeuroInputVectorSWTSSW2D
StoreArray for neuro input vector using simulated TS and simulated 2D.
TH1F * m_DeltaRecoSWInvPt
matched to SW reconstructed inverse Pt
TH1F * m_neuroHWSelTSLR_Layer0
Left/Right of track segments in layer 0.
TH1F * m_neuroSWTSSW2DInTSLR_Layer6
Left/Right of track segments in layer 6.
TH1F * m_neuroSWInputID_Layer1
simulated id input in layer 1
bool m_skipWithoutHWTS
Switch to skip events without unpacked TS.
TH1F * m_neuroSWTSSW2DInputT_Layer0
simulated time input in layer 0
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer7
Priority bits of track segments in layer 7.
TH1F * m_neuroHWInTSFoundT_Layer3
Found time of track segments in layer 3.
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer6
Found time of track segments in layer 6.
TH1F * m_neuroHWInputT_Layer4
unpacked time input in layer 4
TH1F * m_neuroHWInputAlpha_Layer5
unpacked alpha input in layer 5
TH1F * m_RecoSWTSSW2DPhi
matched to SWTSSW2DSWNN reconstructed phi
TH1F * m_neuroHWInTSLR_Layer0
Left/Right of track segments in layer 0.
TH1F * m_neuroSWTSSW2DSelTSLR_Layer5
Left/Right of track segments in layer 5.
TH1F * m_DeltaRecoHWCosTheta
matched to HW reconstructed cos(theta)
TH1F * m_neuroSWTSSW2DInTSID
ID of incoming track segments.
TH1F * m_neuroHWInputID_Layer1
unpacked id input in layer 1
TH1F * m_RecoSWTSSW2DZ
matched to SWTSSW2DSWNN reconstructed z
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer3
Priority bits of track segments in layer 3.
StoreArray< CDCTriggerTrack > m_simNeuroTracks
StoreArray for neuro tracks from TSIM.
TH1F * m_neuroHWSelTSLR_Layer3
Left/Right of track segments in layer 3.
TH1F * m_neuroHWSelTSFoundT_Layer8
Found time of selected track segments in layer 8.
TH1F * m_neuroSWTSSW2DSelTSLR_Layer6
Left/Right of track segments in layer 6.
TH1F * m_neuroRecoSWTSSW2DOutZ
reco matched z distribution from simulation (sw TS sw 2D sw NN)
std::string m_simNeuroInputVectorName
Name for simulated neuro input vector using HW TS, HW 2D.
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer4
Priority bits of track segments in layer 4.
TH1F * m_2DHWInTSPrioT_Layer2
Priority time of 2D track segments in layer 2.
TH1F * m_neuroHWOutPhi0
phi distribution of unpacked neuro tracks
TH1F * m_neuroHWOutQuad3Z
z distribution from unpacker (quadrant 3)
TH1F * m_neuroHWInTSFoundT_Layer5
Found time of track segments in layer 5.
TH1F * m_neuroHWOutQuad1Phi0
phi distribution from unpacker (quadrant 1)
TH1F * m_neuroHWSector
sector of unpacked neuro tracks
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer8
Priority time of selected track segments in layer 8.
TH1F * m_neuroHWInTrackCount
number of neuro input 2dtracks per event
TH1F * m_neuroHWSelTSPrioB_Layer2
Priority bits of track segments in layer 2.
TH1F * m_neuroHWInTSLR_Layer4
Left/Right of track segments in layer 4.
TH1F * m_neuroSWOutHitPattern
stereo hit pattern of simulated neuro tracks (hw TS hw 2D sw NN)
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer6
Priority bits of track segments in layer 6.
TH1F * m_2DHWInTSLR_Layer0
Left/Right of 2D track segments in layer 0.
TH1F * m_neuroSWOutCosTheta
cos theta distribution from simulation (hw TS hw 2D sw NN)
TH1F * m_neuroSWInputT_Layer2
simulated time input in layer 2
TH1F * m_neuroRecoHWSector
reco matched NN sector from unpacker
TH1F * m_neuroSWTSSW2DInputID_Layer0
simulated id input in layer 0
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer2
Priority time of track segments in layer 2.
TH1F * m_neuroHWInTSLR_Layer8
Left/Right of track segments in layer 8.
StoreArray< CDCTriggerSegmentHit > m_unpackedSegmentHits
StoreArray for TS hits from unpacker.
TH1F * m_neuroHWSelTSPrioB_Layer4
Priority bits of track segments in layer 4.
virtual void beginRun() override
Function to process begin_run record.
std::string m_histogramDirectoryName
Name of the histogram directory in ROOT file.
TH1F * m_neuroSWSelTSPrioB_Layer4
Priority bits of track segments in layer 4.
TH1F * m_neuroHWOutQuad0Z
z distribution from unpacker (quadrant 0)
TH1F * m_neuroHWInputAlpha_Layer1
unpacked alpha input in layer 1
TH1F * m_neuroHWInTSPrioB_Layer7
Priority bits of track segments in layer 7.
TH1F * m_neuroSWSelTSFoundT_Layer2
Found time of track segments in layer 2.
TH1F * m_neuroSWSelTSPrioT_Layer2
Priority time of track segments in layer 2.
TH1F * m_2DHWInTSLR_Layer6
Left/Right of 2D track segments in layer 6.
TH1F * m_neuroHWSelTSPrioT_Layer1
Priority time of selected track segments in layer 1.
StoreArray< CDCTriggerTrack > m_sim2DTracksSWTS
StoreArray for simulated 2D finder tracks using simulated TS.
TH1F * m_neuroHWSelTSLR_Layer5
Left/Right of track segments in layer 5.
std::string m_recoTracksName
Name for the RecoTrack array name.
TH1F * m_RecoHWPhi
matched to HW reconstructed phi
TH1F * m_neuroHWOutQuad1CosTheta
cos theta distribution from unpacker (quadrant 1)
TH1F * m_neuroSWInputID_Layer2
simulated id input in layer 2
TH1F * m_neuroHWSelTSFoundT_Layer5
Found time of selected track segments in layer 5.
TH1F * m_neuroHWOutInvPt
Inverse Pt distribution of unpacked neuro tracks.
TH1F * m_neuroSWSelTSLR_Layer3
Left/Right of track segments in layer 3.
TH1F * m_neuroSWTSSW2DInTSLR_Layer5
Left/Right of track segments in layer 5.
TH1F * m_neuroDeltaInputAlpha
unpacked alpha input - TSIM alpha input
TH1F * m_neuroHWInTSPrioT_Layer8
Priority time of track segments in layer 8.
TH1F * m_neuroSWSelTSPrioT_Layer7
Priority time of track segments in layer 7.
TH1F * m_neuroSWInputT_Layer3
simulated time input in layer 3
TH1F * m_neuroSWSelTSFoundT_Layer6
Found time of track segments in layer 6.
TH1F * m_neuroSWSelTSFoundT_Layer4
Found time of track segments in layer 4.
TH1F * m_neuroHWInTSCount
number of TS per track
TH1F * m_neuroRecoSWSector
reco matched NN sector from simulation (hw TS hw 2D sw NN)
TH1F * m_neuroDeltaSector
unpacked sector - TSIM sector
TH1F * m_neuroHWOutm_time
m_time distribution of unpacked neuro tracks
TH1F * m_2DHWInTSLR_Layer8
Left/Right of 2D track segments in layer 8.
TH1F * m_RecoHWCosTheta
matched to HW reconstructed cos(theta)
std::string m_simNeuroInputVectorSWTSSW2DName
Name for neuro input vector using simulated TS and simulated 2D.
TH1F * m_neuroSWSelTSFoundT_Layer1
Found time of track segments in layer 1.
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer5
Priority bits of track segments in layer 5.
TH1F * m_neuroRecoSWTSSW2DOutCosTheta
reco matched cos theta distribution from simulation (sw TS sw 2D sw NN)
TH1F * m_neuroHWSelTSLR_Layer7
Left/Right of track segments in layer 7.
double m_maxRecoZDist
Select only RecoTracks with a maximum z distance to the IP.
TH1F * m_neuroHWSelTSFoundT_Layer0
Found time of selected track segments in layer 0.
TH1F * m_neuroSWSelTSPrioB_Layer3
Priority bits of track segments in layer 3.
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer7
Found time of selected track segments in layer 7.
TH1F * m_neuroSWTSSW2DInputT_Layer5
simulated time input in layer 5
int m_nsamets
Number of identical track segments to be required for matching between HW and SW Neurotrigger.
TH1F * m_DeltaRecoSWCosTheta
matched to SW reconstructed cos(theta)
std::string m_simNeuroTracksName
Name for neuro tracks from TSIM using HW TS, HW 2D.
TH1F * m_neuroHWSelTSPrioB_Layer8
Priority bits of track segments in layer 8.
TH1F * m_RecoSWTSSW2DD0
matched to SWTSSW2DSWNN reconstructed d0
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer5
Found time of track segments in layer 5.
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer2
Found time of track segments in layer 2.
TH1F * m_neuroSWTSSW2DInputAlpha_Layer1
simulated alpha input in layer 1
unsigned getPattern(CDCTriggerTrack *track, std::string hitCollectionName)
get pattern of the track
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer0
Priority time of selected track segments in layer 0.
TH1F * m_neuroSWTSSW2DInputT_Layer7
simulated time input in layer 7
TH1F * m_neuroSWInputID_Layer5
simulated id input in layer 5
TH1F * m_neuroHWInTSPrioB_Layer6
Priority bits of track segments in layer 6.
TH1F * m_neuroSWSelTSLR_Layer0
Left/Right of track segments in layer 0.
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer4
Priority time of selected track segments in layer 4.
TH1F * m_neuroHWInputID_Layer2
unpacked id input in layer 2
TH1F * m_neuroHWInTSPrioT_Layer0
Priority time of track segments in layer 0.
TH1F * m_neuroRecoSWOutZ
reco matched z distribution from simulation (hw TS hw 2D sw NN)
TH1F * m_neuroSWInputAlpha_Layer4
simulated alpha input in layer 4
TH1F * m_neuroSWTSSW2DSelTSLR_Layer1
Left/Right of track segments in layer 1.
TH1F * m_neuroHWInputID_Layer5
unpacked id input in layer 5
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer8
Priority bits of track segments in layer 8.
TH1F * m_neuroSWSelTSCount
number of TS per SL
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer7
Priority bits of track segments in layer 7.
TH1F * m_neuroSWInputAlpha_Layer5
simulated alpha input in layer 5
std::string m_unpackedNeuroInputVectorName
Name for neuro input vector from unpacker.
TH1F * m_neuroHWSelTSPrioT_Layer3
Priority time of selected track segments in layer 3.
TH1F * m_neuroHWSelTSPrioT_Layer6
Priority time of selected track segments in layer 6.
TH1F * m_neuroSWTSSW2DInputT_Layer2
simulated time input in layer 2
TH1F * m_neuroSWTSSW2DInputID_Layer8
simulated id input in layer 8
std::string m_sim2DTracksSWTSName
Name for simulated 2D finder tracks using simulated TS.
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer5
Priority bits of track segments in layer 5.
TH1F * m_RecoHWZ
matched to HW reconstructed z
TH1F * m_neuroHWSelTSFoundT_Layer7
Found time of selected track segments in layer 7.
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer1
Priority time of track segments in layer 1.
TH2F * m_neuroScatterZ
unpacked z vs TSIM z, scatter plot
TH1F * m_neuroHWOutQuad2Z
z distribution from unpacker (quadrant 2)
TH1F * m_neuroDeltaInputID
unpacked ID input - TSIM ID input
TH1F * m_neuroHWSelTSLR_Layer4
Left/Right of track segments in layer 4.
TH1F * m_neuroHWInTSFoundT_Layer4
Found time of track segments in layer 4.
TH1F * m_neuroHWInTSPrioT_Layer3
Priority time of track segments in layer 3.
TH1F * m_RecoHWInvPt
matched to HW reconstructed inverse Pt
TH1F * m_neuroHWInTSPrioB_Layer2
Priority bits of track segments in layer 2.
TH1F * m_neuroHWInputAlpha_Layer0
unpacked alpha input in layer 0
TH1F * m_neuroHWOutTrackCount
number of unpacked tracks per event
TH1F * m_DeltaRecoSWZ
matched to SW reconstructed z
TH1F * m_neuroSWTSSW2DInputAlpha_Layer7
simulated alpha input in layer 7
TH1F * m_2DHWInTSLR_Layer2
Left/Right of 2D track segments in layer 2.
TH1F * m_neuroSWSelTSLR_Layer4
Left/Right of track segments in layer 4.
TH1F * m_2DHWInTSPrioT_Layer0
Priority time of 2D track segments in layer 0.
TH1F * m_DeltaRecoHWZ
matched to HW reconstructed z
TH1F * m_neuroRecoSWTSSW2DSector
reco matched NN sector from simulation (sw TS sw 2D sw NN)
bool isValidPattern(unsigned pattern)
Validity of the pattern.
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer0
Priority time of track segments in layer 0.
StoreObjPtr< BinnedEventT0 > m_eventTime
storeobjpointer for event time
TH1F * m_neuroRecoHWOutPhi0
reco matched phi distribution from unpacker
TH1F * m_neuroSWTSSW2DOutPhi0
phi distribution from simulation (sw TS sw 2D sw NN)
std::string m_simNeuroTracksSWTSSW2DName
Name for neuro tracks using simulated TS and simulated 2D.
TH1F * m_neuroHWOutCosTheta
cos theta distribution of unpacked neuro tracks
TH1F * m_neuroHWSelTSPrioT_Layer4
Priority time of selected track segments in layer 4.
TH1F * m_neuroSWInputID_Layer3
simulated id input in layer 3
TH1F * m_neuroHWInputID_Layer0
unpacked id input in layer 0
TH1F * m_neuroHWSelTSLR_Layer1
Left/Right of track segments in layer 1.
TH1F * m_neuroSWTSSW2DOutZ
z distribution from simulation (sw TS sw 2D sw NN)
TH1F * m_neuroSWInputAlpha_Layer8
simulated alpha input in layer 8
TH1F * m_neuroHWOutQuad3CosTheta
cos theta distribution from unpacker (quadrant 3)
TH1F * m_neuroHWOutQuad3InvPt
Inverse Pt distribution from unpacker (quadrant 3)
TH1F * m_neuroHWInputT_Layer8
unpacked time input in layer 8
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer1
Found time of selected track segments in layer 1.
TH1F * m_neuroSWSelTSPrioB_Layer5
Priority bits of track segments in layer 5.
TH1F * m_neuroHWInTSLR_Layer7
Left/Right of track segments in layer 7.
TH1F * m_DeltaRecoSWTSSW2DZ
matched to SWTSSW2DSWNN reconstructed z
TH1F * m_2DHWInTSPrioB_Layer2
Priority bits of 2D track segments in layer 2.
TH1F * m_neuroSWTSSW2DInputID_Layer4
simulated id input in layer 4
TH1F * m_neuroHWInputAlpha_Layer8
unpacked alpha input in layer 8
TH1F * m_neuroSWInputT_Layer4
simulated time input in layer 4
TH1F * m_neuroSWSelTSPrioT_Layer5
Priority time of track segments in layer 5.
TH1F * m_neuroSWTSSW2DOutCosTheta
cos theta distribution from simulation (sw TS sw 2D sw NN)
StoreArray< CDCTriggerTrack > m_unpacked2DTracks
StoreArray for 2D finder tracks from unpacker.
TH1F * m_neuroHWInputT_Layer7
unpacked time input in layer 7
TH1F * m_2DHWInTSPrioT_Layer6
Priority time of 2D track segments in layer 6.
TH1F * m_neuroSWInputAlpha_Layer7
simulated alpha input in layer 7
TH1F * m_neuroSWTSSW2DSelTSFoundT_Layer0
Found time of selected track segments in layer 0.
TH1F * m_neuroSWTSSW2DInputAlpha_Layer4
simulated alpha input in layer 4
TH1F * m_neuroHWOutVsInTrackCount
neuroHWOutTracks - neuroHWInTrackCount
TH1F * m_RecoSWTSSW2DCosTheta
matched to SWTSSW2DSWNN reconstructed cos(theta)
TH1F * m_neuroSWTSSW2DInputID_Layer7
simulated id input in layer 7
TH1F * m_neuroHWInTSPrioB_Layer3
Priority bits of track segments in layer 3.
TH1F * m_neuroSWInputT_Layer1
simulated time input in layer 1
TH1F * m_2DHWInTSPrioB_Layer6
Priority bits of 2D track segments in layer 6.
std::string m_unpackedNeuroTracksName
Name for neuro tracks from unpacker.
TH1F * m_RecoCosTheta
reconstructed cos(theta)
TH1F * m_neuroHWSelTSLR_Layer2
Left/Right of track segments in layer 2.
TH1F * m_neuroSWSelTSLR_Layer8
Left/Right of track segments in layer 8.
TH1F * m_neuroHWOutQuad5Z
z distribution from unpacker (no quadrant set)
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer4
Priority time of track segments in layer 4.
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer8
Priority time of track segments in layer 8.
StoreArray< RecoTrack > m_RecoTracks
StoreArray for RecoTracks.
TH1F * m_neuroHWOutQuad5Phi0
phi distribution from unpacker (no quadrant set)
TH1F * m_neuroSWSelTSLR_Layer1
Left/Right of track segments in layer 1.
TH1F * m_RecoSWZ
matched to SW reconstructed z
TH1F * m_neuroHWSelTSFoundT_Layer2
Found time of selected track segments in layer 2.
TH1F * m_neuroSWSelTSPrioB_Layer6
Priority bits of track segments in layer 6.
TH1F * m_neuroSWSelTSFoundT_Layer8
Found time of track segments in layer 8.
TH1F * m_neuroHWSelTSPrioB_Layer1
Priority bits of track segments in layer 1.
TH1F * m_neuroSWInputAlpha_Layer2
simulated alpha input in layer 2
TH1F * m_neuroSWTSSW2DInputT_Layer8
simulated time input in layer 8
TH1F * m_neuroSWSelTSPrioB_Layer2
Priority bits of track segments in layer 2.
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer5
Priority time of track segments in layer 5.
TH1F * m_neuroSWTSSW2DSelTSLR_Layer0
Left/Right of track segments in layer 0.
TH1F * m_neuroSWTSSW2DInTSLR_Layer7
Left/Right of track segments in layer 7.
TH1F * m_neuroHWOutHitPattern
stereo hit pattern of simulated neuro tracks (hw TS hw 2D sw NN)
TH1F * m_neuroHWOutQuad0InvPt
Inverse Pt distribution from unpacker (quadrant 0)
TH1F * m_DeltaRecoSWTSSW2DPhi
matched to SWTSSW2DSWNN reconstructed phi
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer1
Priority bits of track segments in layer 1.
TH1F * m_DeltaRecoHWPhi
matched to HW reconstructed phi
TH1F * m_neuroHWInTSPrioT_Layer7
Priority time of track segments in layer 7.
TH1F * m_neuroHWOutQuad2CosTheta
cos theta distribution from unpacker (quadrant 2)
TH1F * m_neuroSWTSSW2DSelTSCount
number of TS per SL
TH1F * m_DeltaRecoSWPhi
matched to SW reconstructed phi
TH1F * m_neuroSWTSSW2DSelTSPrioB_Layer2
Priority bits of track segments in layer 2.
TH1F * m_neuroSWTSSW2DInTSPrioB_Layer2
Priority bits of track segments in layer 2.
TH1F * m_neuroSWTSSW2DSelTSLR_Layer7
Left/Right of track segments in layer 7.
TH1F * m_neuroRecoHWOutTrackCount
reco matched number of unpacked and matched tracks per event
TH1F * m_neuroHWSelTSPrioT_Layer8
Priority time of selected track segments in layer 8.
TH1F * m_neuroDeltaTSID
unpacked selected TSID - TSIM selected TSID
StoreArray< CDCTriggerTrack > m_simNeuroTracksSWTSSW2D
StoreArray for neuro tracks using simulated TS and simulated 2D.
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer8
Found time of track segments in layer 8.
TH1F * m_neuroHWInTSLR_Layer1
Left/Right of track segments in layer 1.
TH1F * m_neuroHWInputAlpha_Layer6
unpacked alpha input in layer 6
TH1F * m_neuroHWOutQuad5InvPt
Inverse Pt distribution from unpacker (no quadrant set)
TH1F * m_neuroHWInputT_Layer3
unpacked time input in layer 3
TH1F * m_neuroRecoSWOutPhi0
reco matched phi distribution from simulation (hw TS hw 2D sw NN)
TH1F * m_neuroHWInputT_Layer5
unpacked time input in layer 5
TH1F * m_neuroHWSelTSPrioB_Layer0
Priority bits of track segments in layer 0.
TH1F * m_neuroSWTSSW2DInputAlpha_Layer0
simulated alpha input in layer 0
TH1F * m_neuroHWInputID_Layer8
unpacked id input in layer 8
TH1F * m_neuroSWTSSW2DInputAlpha_Layer8
simulated alpha input in layer 8
TH1F * m_neuroHWInTSPrioB_Layer0
Priority bits of track segments in layer 0.
TH1F * m_neuroHWInputT_Layer6
unpacked time input in layer 6
TH1F * m_neuroHWInTSPrioT_Layer6
Priority time of track segments in layer 6.
TH1F * m_neuroSWTSSW2DInTSLR_Layer8
Left/Right of track segments in layer 8.
TH1F * m_neuroRecoSWOutCosTheta
reco matched cos theta distribution from simulation (hw TS hw 2D sw NN)
TH1F * m_neuroHWSelTSLR_Layer8
Left/Right of track segments in layer 8.
TH1F * m_2DHWInTSPrioT_Layer4
Priority time of 2D track segments in layer 4.
TH1F * m_neuroSWTSSW2DInTSPrioT_Layer3
Priority time of track segments in layer 3.
TH1F * m_neuroSWSelTSFoundT_Layer7
Found time of track segments in layer 7.
TH1F * m_neuroSWTSSW2DInputT_Layer4
simulated time input in layer 4
TH1F * m_neuroHWSelTSFoundT_Layer3
Found time of selected track segments in layer 3.
TH1F * m_neuroHWOutQuad2Phi0
phi distribution from unpacker (quadrant 2)
TH1F * m_neuroSWTSSW2DInTSFoundT_Layer0
Found time of track segments in layer 0.
TH1F * m_neuroHWInTSID
ID of incoming track segments.
virtual void defineHisto() override
Histogram definitions such as TH1(), TH2(), TNtuple(), TTree()....
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer1
Priority time of selected track segments in layer 1.
TH1F * m_neuroHWSelTSID
ID of selected track segments.
TH1F * m_neuroSWTSSW2DInputID_Layer1
simulated id input in layer 1
TH1F * m_neuroSWTSSW2DSelTSPrioT_Layer3
Priority time of selected track segments in layer 3.
TH1F * m_RecoSWInvPt
matched to SW reconstructed inverse Pt
Combination of several CDCHits to a track segment hit for the trigger.
Track created by the CDC trigger.
HistoModule.h is supposed to be used instead of Module.h for the modules with histogram definitions t...
Definition: HistoModule.h:29
Abstract base class for different kinds of events.