Belle II Software  release-05-02-19
TRGCDC.h
1 //-----------------------------------------------------------------------------
2 // $Id$
3 //-----------------------------------------------------------------------------
4 // Filename : TRGCDC.h
5 // Section : TRG CDC
6 // Owner : Yoshihito Iwasaki
7 // Email : yoshihito.iwasaki@kek.jp
8 //-----------------------------------------------------------------------------
9 // Description : A class to represent CDC.
10 //-----------------------------------------------------------------------------
11 // $Log$
12 //-----------------------------------------------------------------------------
13 
14 #ifndef TRGCDC_FLAG_
15 #define TRGCDC_FLAG_
16 
17 #define TRGCDC_UNDEFINED 999999
18 
19 #include <vector>
20 #include "trg/trg/Clock.h"
21 #include "trg/trg/Signal.h"
22 
23 class TFile;
24 class TTree;
25 class TClonesArray;
26 
27 namespace HepGeom {
28  template <class T> class Point3D;
29 }
30 
31 namespace Belle2 {
37  namespace CDC {
38  class CDCGeometryPar;
39  }
40 
41  class TRGTime;
42  class TRGClock;
43  class TRGLink;
44  class TRGCDC;
45  class TRGCDCWire;
46  class TRGCDCLayer;
47  class TRGCDCWireHit;
48  class TRGCDCWireHitMC;
49  class TRGCDCSegment;
50  class TRGCDCSegmentHit;
51  class TRGCDCFrontEnd;
52  class TRGCDCMerger;
53  class TRGCDCTSFBoard;
54  class TRGCDCTracker2D;
55  class TRGCDCTrackSegmentFinder;
56  class TRGCDCPerfectFinder;
57  class TRGCDCHoughFinder;
58  class TRGCDCHough3DFinder;
59  class TRGCDCFitter3D;
60  class TRGCDCLUT;
61  class TRGCDCTrack;
62  class TRGCDCEventTime;
63 
69 
70  class TRGCDC {
71 
72  public:
73 
75  enum EReturnValueType {TSF = 1 << 0,
76  ETF = 1 << 1,
77  find2D = 1 << 2,
78  fit2D = 1 << 3,
79  find3D = 1 << 4,
80  fit3D = 1 << 5,
81  any = TSF | ETF | find2D | fit2D | find3D | fit3D
82  };
83 
85  static TRGCDC* getTRGCDC(const std::string& configFile,
86  unsigned simulationMode = 0,
87  unsigned fastSimulationMode = 0,
88  unsigned firmwareSimulationMode = 0,
90  int firmwareSimulationStop = 32 * 32 - 1,
91  bool _makeRootFile = 0,
92  bool perfect2DFinder = false,
93  bool perfect3DFinder = false,
94  const std::string& innerTSLUTFile = "?",
95  const std::string& outerTSLUTFile = "?",
96  const std::string& rootTRGCDCFile = "?",
97  const std::string& rootFitter3DFile = "?",
98  unsigned houghFinderPeakMin = 5,
99  const std::string& houghMappingFilePlus = "?",
100  const std::string& houghMappingFileMinus = "?",
101  unsigned houghDoit = 2,
102  bool fLogicLUTTSF = 0,
103  bool fLRLUT = 1,
104  bool fFitter3Dsmclr = 0,
105  bool fFitter3Ds2DFit = 1,
106  bool fFitter3Ds2DFitDrift = 0,
107  double inefficiency = 0,
108  bool fileTSF = 0,
109  bool fileETF = 0,
110  int fverETF = 0,
111  bool fprintFirmETF = 0,
112  bool fileHough3D = 0,
113  int finder3DMode = 0,
114  bool fileFitter3D = 0,
115  bool fXtSimpleFitter3D = 0,
116  double TdcBinWidth = 1.,
117  int trgCDCDataInputMode = 0,
118  const std::string& cdchitCollectionName = "");
119 
122  static TRGCDC* getTRGCDC(void);
123 
124  private:
125 
127  TRGCDC(const std::string& configFile,
128  unsigned simulationMode,
129  unsigned fastSimulationMode,
130  unsigned firmwareSimulationMode,
133  bool makeRootFile,
134  bool perfect2DFinder,
135  bool perfect3DFinder,
136  const std::string& innerTSLUTFile,
137  const std::string& outerTSLUTFile,
138  const std::string& rootTRGCDCFile,
139  const std::string& rootFitter3DFile,
140  unsigned houghFinderPeakMin,
141  const std::string& houghMappingFilePlus,
142  const std::string& houghMappingFileMinus,
143  unsigned houghDoit,
144  bool fLogicLUTTSF,
145  bool fLRLUT,
146  bool fFitter3Dsmclr,
147  bool fFitter3Ds2DFit,
148  bool fFitter3Ds2DFitDrift,
149  double inefficiecny,
150  bool fileTSF,
151  bool fileETF,
152  int fverETF,
153  bool fprintFirmETF,
154  bool fileHough3D,
155  int finder3DMode,
156  bool fileFitter3D,
157  bool fXtSimpleFitter3D,
158  double TdcBinWidth,
159  int trgCDCDataInputMode,
160  const std::string& cdchitCollectionName);
161 
163  virtual ~TRGCDC();
164 
166  void initialize(unsigned houghFinderPeakMin,
167  const std::string& houghMappingFilePlus,
168  const std::string& houghMappingFileMinus,
169  unsigned houghDoit);
170 
172  void configure(void);
173 
175  void simulate(void);
176 
182  void storeSimulationResults(std::string collection2Dfinder,
183  std::string collection2Dfitter,
184  std::string collection3Dfitter);
185 
187  void terminate(void);
188 
190 
191  public:// Selectors
192 
194  std::string name(void) const;
195 
197  std::string version(void) const;
198 
200  std::string versionCDC(void) const;
201 
203  unsigned mode(void) const;
204 
206  unsigned mode(unsigned);
207 
209  unsigned firmwareSimulationMode(void) const;
210 
212  int getReturnValue(void) const;
213 
215  int getReturnValue(EReturnValueType const& moduleName) const;
216 
218  void setReturnValue(EReturnValueType const& moduleName, bool flag);
219 
221  void setReturnValue(int);
222 
224  void dump(const std::string& message) const;
225 
227  int debugLevel(void) const;
228 
230  int debugLevel(int) const;
231 
233  float fudgeFactor(void) const;
234 
236  float fudgeFactor(float);
237 
239  std::vector<TRGCDCTrack*> getTrackList2D(void);
240 
242  std::vector<TRGCDCTrack*> getTrackList2DFitted(void);
243 
245  std::vector<TRGCDCTrack*> getTrackList3D(void);
246 
248  std::string getCDCHitCollectionName() const { return _cdchitCollectionName; }
249 
250  public:// Geometry
251 
254 
257  const TRGCDCWire* wire(unsigned wireId) const;
258 
261  const TRGCDCWire* wire(unsigned layerId, int localId) const;
262 
264 // const TRGCDCWire * wire(const HepGeom::Point3D<double> & point) const;
265 
267  const TRGCDCWire* wire(float r, float phi) const;
268 
270  const TRGCDCLayer* layer(unsigned id) const;
271 
274  const std::vector<TRGCDCLayer*>* superLayer(unsigned id) const;
275 
278  unsigned nLocalLayers(unsigned superLayerId) const;
279 
281  unsigned nWires(void) const;
282 
284  unsigned nSuperLayers(void) const;
285 
287  unsigned nLayers(void) const;
288 
290  unsigned nAxialLayers(void) const;
291 
293  unsigned nStereoLayers(void) const;
294 
296  unsigned nAxialSuperLayers(void) const;
297 
299  unsigned nStereoSuperLayers(void) const;
300 
302  float cellWidth(unsigned superLayerId) const;
303 
305  float superLayerR(unsigned superLayerId) const;
306 
308  float superLayerR2(unsigned superLayerId) const;
309 
311  unsigned nSegments(void) const;
312 
314  const TRGCDCSegment& segment(unsigned id) const;
315 
317  const TRGCDCSegment& segment(unsigned lyrId, unsigned id) const;
318 
320  const TRGCDCSegment& axialSegment(unsigned lyrId, unsigned id) const;
321 
323  const TRGCDCSegment& stereoSegment(unsigned lyrId, unsigned id) const;
324 
326  unsigned nSegmentLayers(void) const;
327 
330  const TRGCDCLayer* segmentLayer(unsigned id) const;
331 
333  unsigned nSegments(unsigned id) const;
334 
335  public:// Event by event hit information.
336 
338  void clear(void);
339 
341  void fastClear(void);
342 
344  void update();
345 
350  void updateByData(int inputMode);
351 
354  std::vector<const TRGCDCWireHit*> hits(void) const;
355 
358  std::vector<const TRGCDCWireHit*> axialHits(void) const;
359 
362  std::vector<const TRGCDCWireHit*> stereoHits(void) const;
363 
366  std::vector<const TRGCDCSegmentHit*> segmentHits(void) const;
367 
370  std::vector<const TRGCDCSegmentHit*> segmentHits(unsigned) const;
371 
374  std::vector<const TRGCDCSegmentHit*> axialSegmentHits(unsigned) const;
375 
378  std::vector<const TRGCDCSegmentHit*> stereoSegmentHits(unsigned) const;
379 
382  std::vector<const TRGCDCWireHitMC*> hitsMC(void) const;
383 
385 // std::vector<const TRGCDCWireHit *> badHits(void) const;
386 
388  int getEventTime(void) const;
389 
390  public:// Utility functions
391 
393  std::string wireName(unsigned wireId) const;
394 
396  unsigned localId(unsigned wireId) const;
397 
399  unsigned layerId(unsigned wireId) const;
400 
402  unsigned layerId(unsigned axialStereoSwitch,
403  unsigned axialStereoLayerId) const;
404 
406  unsigned superLayerId(unsigned wireId) const;
407 
409  unsigned localLayerId(unsigned wireId) const;
410 
412  unsigned axialStereoSuperLayerId(unsigned axialStereo,
413  unsigned axialStereoLayerId) const;
414 
416  bool neighbor(const TRGCDCWire& w0, const TRGCDCWire& w1) const;
417 
419  void perfect3DFinder(std::vector<TRGCDCTrack*> trackList) const;
420 
423 // static void driftDistance(TLink & link,
424 // const TTrack & track,
425 // unsigned correctionFlag = 0,
426 // float T0Offset = 0.);
427 
428  public:// TRG information
429 
431  const TRGClock& systemClock(void) const;
432 
434  const TRGClock& systemClockFE(void) const;
435 
438  const TRGClock& TDCClock(void) const;
439 
441  const TRGClock& dataClock(void) const;
442 
444  int firmwareSimulationStart(void) const;
445 
447  int firmwareSimulationStop(void) const;
448 
450  int firmwareSimulationStartDataClock(void) const;
451 
453  int firmwareSimulationStopDataClock(void) const;
454 
456  const TRGClock& userClock3125(void) const;
457 
459  double systemOffsetMC(void) const;
460 
462  const TRGCDCFrontEnd* frontEnd(unsigned id) const;
463 
465  const TRGCDCMerger* merger(unsigned id) const;
466 
468 // const TRGCDCTrackSegmentFinder * tsfboard(unsigned id) const;
469  TRGCDCTrackSegmentFinder* tsfboard(unsigned id) const;
470 
472  const TRGCDCTracker2D* tracker2D(unsigned id) const;
473 
474  private:
475 
477  void classification(void);
478 
480  void updateMC(void);
481 
483  void fastSimulation(void);
484 
486  void firmwareSimulation(void);
487 
488  private:
489 
491  static TRGCDC* _cdc;
492 
494  mutable int _debugLevel;
495 
497  const std::string _cdcVersion;
498 
500  std::string _configFilename;
501 
503  unsigned _simulationMode;
504 
507 
517 
520 
523 
526 
529 
532 
535 
537  std::vector<TRGCDCTrack*> _trackList2D;
538 
540  std::vector<TRGCDCTrack*> _trackList2DFitted;
541 
543  std::vector<TRGCDCTrack*> _trackList3D;
544 
547 
549  const bool _perfect2DFinder;
550 
552  const bool _perfect3DFinder;
553 
555  std::string _innerTSLUTFilename;
556 
558  std::string _outerTSLUTFilename;
559 
561  std::string _rootTRGCDCFilename;
562 
565 
568 
570  bool _fLRLUT;
571 
574 
577 
580 
583 
585  bool _fileTSF;
586 
588  bool _fileETF;
589 
591  int _fverETF;
592 
595 
598 
601 
604 
607 
609  std::vector<std::vector<TRGCDCLayer*> *> _superLayers;
610 
612  std::vector<std::vector<TRGCDCLayer*> *> _axialSuperLayers;
613 
615  std::vector<std::vector<TRGCDCLayer*> *> _stereoSuperLayers;
616 
618  std::vector<TRGCDCLayer*> _layers;
619 
621  std::vector<TRGCDCLayer*> _axialLayers;
622 
624  std::vector<TRGCDCLayer*> _stereoLayers;
625 
627  std::vector<TRGCDCWire*> _wires;
628 
630  std::vector<TRGCDCWire*> _hitWires;
631 
633  std::vector<TRGCDCWireHit*> _hits;
634 
636  std::vector<TRGCDCWireHit*> _axialHits;
637 
639  std::vector<TRGCDCWireHit*> _stereoHits;
640 
642  std::vector<TRGCDCWireHit*> _badHits;
643 
645  std::vector<TRGCDCWireHitMC*> _hitsMC;
646 
648  std::vector<TRGCDCSegment*> _tss;
649 
651  std::vector<TRGCDCSegment*> _tsSL[9];
652 
654  std::vector<TRGCDCLayer*> _tsLayers;
655 
657  std::vector<TRGCDCSegmentHit*> _segmentHits;
658 
660  std::vector<TRGCDCSegmentHit*> _segmentHitsSL[9];
661 
664 
666  float* _width;
667 
669  float* _r;
670 
672  float* _r2;
673 
676 
679 
683 
686 
689 
692 
694  const double _offset;
695 
697  std::vector<TRGLink*> _links;
698 
700  std::vector<TRGCDCFrontEnd*> _fronts;
701 
703  std::vector<TRGCDCMerger*> _mergers;
704 
706  std::vector <TRGCDCTrackSegmentFinder*> _tsfboards;
707 
709  std::vector <TRGCDCTracker2D*> _tracker2Ds;
710 
713 
716 
719 
722 
725 
728 
730  std::vector<TRGCDCEventTime*> _eventTime;
731 
734 
736  TFile* m_file;
737 
739  TTree* m_tree;
740 
743 
745  TTree* _tree2D;
746 
748  TClonesArray* m_fitParameters;
749 
751  TClonesArray* m_mcParameters;
752 
754  TClonesArray* m_mcTrack4Vector;
755 
757  TClonesArray* m_mcTrackVertexVector;
758 
760  TClonesArray* m_mcTrackStatus;
761 
763  TClonesArray* m_evtTime;
764 
766  TClonesArray* _tracks2D;
767 
770 
773 
775  //int m_minCDCTdc;
776  //int m_maxCDCTdc;
777  //int m_minTRGTdc;
778  //int m_maxTRGTdc;
782  TClonesArray* m_rootCDCHitInformation;
784  TClonesArray* m_rootTRGHitInformation;
787  //TClonesArray* m_CDCTRGTimeMatch;
789  TClonesArray* m_rootTRGRawInformation;
790 
792  void saveCDCHitInformation(std::vector<std::vector<unsigned> >&);
794  void saveTRGHitInformation(std::vector<std::vector<int > >&);
796  void saveTRGRawInformation(std::vector<std::string >&);
797  //void saveCDCTRGTimeMatchInformation(std::vector<std::vector<std::map<int, int > > >& );
798 
799  friend class TRGCDCModule;
800  };
801 
802 //-----------------------------------------------------------------------------
803 
804  inline
805  int
806  TRGCDC::debugLevel(void) const
807  {
808  return _debugLevel;
809  }
810 
811  inline
812  int
813  TRGCDC::debugLevel(int a) const
814  {
815  return _debugLevel = a;
816  }
817 
818  inline
819  unsigned
820  TRGCDC::nLocalLayers(unsigned superLayerId) const
821  {
822  std::vector<TRGCDCLayer*>* superLayer = _superLayers[superLayerId];
823  if (! superLayer) return 0;
824  return superLayer->size();
825  }
826 
827  inline
828  const TRGCDCLayer*
829  TRGCDC::layer(unsigned id) const
830  {
831  return _layers[id];
832  }
833 
834  inline
835  const std::vector<TRGCDCLayer*>*
836  TRGCDC::superLayer(unsigned id) const
837  {
838  return _superLayers[id];
839  }
840 
841  inline
842  float
844  {
845  return _fudgeFactor;
846  }
847 
848  inline
849  float
851  {
852  return _fudgeFactor = a;
853  }
854 
855  inline
856  std::string
857  TRGCDC::versionCDC(void) const
858  {
859  return std::string(_cdcVersion);
860  }
861 
862  inline
863  unsigned
864  TRGCDC::nWires(void) const
865  {
866  return _wires.size();
867  }
868 
869  inline
870  unsigned
872  {
873  return _superLayers.size();
874  }
875 
876  inline
877  unsigned
879  {
880  return _stereoLayers.size();
881  }
882 
883  inline
884  unsigned
886  {
887  return _axialLayers.size();
888  }
889 
890  inline
891  unsigned
893  {
894  return _axialSuperLayers.size();
895  }
896 
897  inline
898  unsigned
900  {
901  return _stereoSuperLayers.size();
902  }
903 
904  inline
905  unsigned
906  TRGCDC::nLayers(void) const
907  {
908  return _layers.size();
909  }
910 
911  inline
912  float
913  TRGCDC::cellWidth(unsigned a) const
914  {
915  return _width[a];
916  }
917 
918  inline
919  float
920  TRGCDC::superLayerR(unsigned i) const
921  {
922  return _r[i];
923  }
924 
925  inline
926  float
927  TRGCDC::superLayerR2(unsigned i) const
928  {
929  return _r2[i];
930  }
931 
932  inline
933  const TRGCDCSegment&
934  TRGCDC::segment(unsigned id) const
935  {
936  return * _tss[id];
937  }
938 
939  inline
940  const TRGCDCSegment&
941  TRGCDC::axialSegment(unsigned a, unsigned b) const
942  {
943  return * _tsSL[a * 2][b];
944  }
945 
946  inline
947  const TRGCDCSegment&
948  TRGCDC::stereoSegment(unsigned a, unsigned b) const
949  {
950  return * _tsSL[a * 2 + 1][b];
951  }
952 
953  inline
954  unsigned
955  TRGCDC::nSegments(void) const
956  {
957  return _tss.size();
958  }
959 
960  inline
961  const TRGClock&
963  {
964  return _clock;
965  }
966 
967  inline
968  const TRGClock&
970  {
971  return _clockFE;
972  }
973 
974  inline
975  const TRGClock&
976  TRGCDC::TDCClock(void) const
977  {
978  return _clockTDC;
979  }
980 
981  inline
982  const TRGClock&
983  TRGCDC::dataClock(void) const
984  {
985  return _clockD;
986  }
987 
988  inline
989  double
991  {
992  return _offset;
993  }
994 
995  inline
996  std::vector<const TRGCDCSegmentHit*>
998  {
999  std::vector<const TRGCDCSegmentHit*> t;
1000  t.assign(_segmentHits.begin(), _segmentHits.end());
1001  return t;
1002  }
1003 
1004  inline
1005  std::vector<const TRGCDCSegmentHit*>
1006  TRGCDC::segmentHits(unsigned a) const
1007  {
1008  std::vector<const TRGCDCSegmentHit*> t;
1009  t.assign(_segmentHitsSL[a].begin(), _segmentHitsSL[a].end());
1010  return t;
1011  }
1012 
1013  inline
1014  std::vector<const TRGCDCSegmentHit*>
1015  TRGCDC::axialSegmentHits(unsigned a) const
1016  {
1017  std::vector<const TRGCDCSegmentHit*> t;
1018  t.assign(_segmentHitsSL[a * 2].begin(), _segmentHitsSL[a * 2].end());
1019  return t;
1020  }
1021 
1022  inline
1023  std::vector<const TRGCDCSegmentHit*>
1024  TRGCDC::stereoSegmentHits(unsigned a) const
1025  {
1026  std::vector<const TRGCDCSegmentHit*> t;
1027  t.assign(_segmentHitsSL[a * 2 + 1].begin(),
1028  _segmentHitsSL[a * 2 + 1].end());
1029  return t;
1030  }
1031 
1032  inline
1033  const TRGCDCFrontEnd*
1034  TRGCDC::frontEnd(unsigned a) const
1035  {
1036  return _fronts[a];
1037  }
1038 
1039  inline
1040  const TRGCDCMerger*
1041  TRGCDC::merger(unsigned a) const
1042  {
1043  return _mergers[a];
1044  }
1045 
1046  inline
1048  TRGCDC::tsfboard(unsigned a)const
1049  {
1050  return _tsfboards[a];
1051  }
1052 
1053  inline
1054  const TRGCDCTracker2D*
1055  TRGCDC::tracker2D(unsigned a)const
1056  {
1057  return _tracker2Ds[a];
1058  }
1059 
1060  inline
1061  const TRGCDCLayer*
1062  TRGCDC::segmentLayer(unsigned id) const
1063  {
1064  if (id < _tsLayers.size())
1065  return _tsLayers[id];
1066  return 0;
1067  }
1068 
1069  inline
1070  unsigned
1072  {
1073  return _tsLayers.size();
1074  }
1075 
1076  inline
1077  unsigned
1078  TRGCDC::mode(void) const
1079  {
1080  return _simulationMode;
1081  }
1082 
1083  inline
1084  unsigned
1085  TRGCDC::mode(unsigned a)
1086  {
1087  return _simulationMode = a;
1088  }
1089 
1090  inline
1091  unsigned
1093  {
1094  return _firmwareSimulationMode;
1095  }
1096 
1097  inline
1098  int
1100  {
1101  return _returnValue;
1102  }
1103 
1104  inline
1105  void
1106  TRGCDC::setReturnValue(int returnValue)
1107  {
1108  _returnValue = returnValue;
1109  }
1110 
1111  inline
1112  int
1114  {
1115  return _firmwareSimulationStart;
1116  }
1117 
1118  inline
1119  int
1121  {
1122  return _firmwareSimulationStop;
1123  }
1124 
1125  inline
1126  int
1128  {
1130  }
1131 
1132  inline
1133  int
1135  {
1137  }
1138 
1140 } // namespace Belle2
1141 
1142 #endif /* TRGCDC_FLAG_ */
Belle2::TRGCDC::_configFilename
std::string _configFilename
CDC trigger configuration filename.
Definition: TRGCDC.h:500
Belle2::TRGCDCPerfectFinder
A class to find 2D tracks using MC information.
Definition: PerfectFinder.h:34
Belle2::TRGCDC::_clockUser6250
const TRGClock _clockUser6250
CDC trigger user clock for Aurora 6.250 Gbps.
Definition: TRGCDC.h:691
Belle2::TRGCDC::localId
unsigned localId(unsigned wireId) const
returns local ID in a layer. This function is expensive.
Definition: TRGCDC.cc:1771
Belle2::TRGCDC::firmwareSimulationMode
unsigned firmwareSimulationMode(void) const
returns firmware simulation mode.
Definition: TRGCDC.h:1092
Belle2::TRGCDC::_wires
std::vector< TRGCDCWire * > _wires
All wires.
Definition: TRGCDC.h:627
Belle2::TRGSignal
A class to represent a digitized signal. Unit is nano second.
Definition: Signal.h:28
Belle2::TRGCDC::_width
float * _width
Cell width in radian.
Definition: TRGCDC.h:666
Belle2::TRGCDC::frontEnd
const TRGCDCFrontEnd * frontEnd(unsigned id) const
returns a front-end board.
Definition: TRGCDC.h:1034
Belle2::TRGCDC::getTrackList3D
std::vector< TRGCDCTrack * > getTrackList3D(void)
returns 3D track list (fitted).
Definition: TRGCDC.cc:210
Belle2::TRGCDC::axialSegment
const TRGCDCSegment & axialSegment(unsigned lyrId, unsigned id) const
returns a track segment in axial layers. (lyrId is axial #)
Definition: TRGCDC.h:941
Belle2::TRGCDC::m_treeROOTInput
TTree * m_treeROOTInput
Debugging members for firmware ROOT input.
Definition: TRGCDC.h:780
Belle2::TRGCDC::_outerTSLUTFilename
std::string _outerTSLUTFilename
The filename of LUT for outer track segments.
Definition: TRGCDC.h:558
Belle2::TRGCDC::stereoSegmentHits
std::vector< const TRGCDCSegmentHit * > stereoSegmentHits(unsigned) const
returns a list of TRGCDCSegmentHit in a stereo super layer N.
Definition: TRGCDC.h:1024
Belle2::TRGCDC::getTrackList2DFitted
std::vector< TRGCDCTrack * > getTrackList2DFitted(void)
returns 2D fitted track list.
Definition: TRGCDC.cc:204
Belle2::TRGCDC::_hFinder
TRGCDCHoughFinder * _hFinder
Hough finder.
Definition: TRGCDC.h:721
Belle2::TRGCDC::_tsfboards
std::vector< TRGCDCTrackSegmentFinder * > _tsfboards
CDC trigger tsf boards.
Definition: TRGCDC.h:706
Belle2::TRGCDC::segmentHits
std::vector< const TRGCDCSegmentHit * > segmentHits(void) const
returns a list of TRGCDCSegmentHit.
Definition: TRGCDC.h:997
Belle2::TRGCDC::_axialSuperLayers
std::vector< std::vector< TRGCDCLayer * > * > _axialSuperLayers
Axial super layers.
Definition: TRGCDC.h:612
Belle2::TRGCDC::_fLogicLUTTSF
bool _fLogicLUTTSF
Switch for logic or LUT TSF.
Definition: TRGCDC.h:567
Belle2::TRGCDC::_fitter3D
TRGCDCFitter3D * _fitter3D
3D fitter.
Definition: TRGCDC.h:727
Belle2::TRGCDC::firmwareSimulation
void firmwareSimulation(void)
Firmware simulation.
Definition: TRGCDC.cc:2361
Belle2::TRGCDC::fudgeFactor
float fudgeFactor(void) const
returns fudge factor for drift time error.
Definition: TRGCDC.h:843
Belle2::TRGCDC::stereoSegment
const TRGCDCSegment & stereoSegment(unsigned lyrId, unsigned id) const
returns a track segment in stereo layers. (lyrId is stereo #)
Definition: TRGCDC.h:948
Belle2::TRGCDC::storeSimulationResults
void storeSimulationResults(std::string collection2Dfinder, std::string collection2Dfitter, std::string collection3Dfitter)
Save results of fast simulation to data store (segment hits & tracks).
Definition: TRGCDC.cc:2246
Belle2::TRGCDC::_tracker2Ds
std::vector< TRGCDCTracker2D * > _tracker2Ds
CDC 2D finder boards.
Definition: TRGCDC.h:709
Belle2::TRGCDC::systemOffsetMC
double systemOffsetMC(void) const
returns the system offset in MC.
Definition: TRGCDC.h:990
Belle2::TRGCDC::_clockD
const TRGClock _clockD
CDC trigger data clock.
Definition: TRGCDC.h:685
Belle2::TRGCDC::_tsLayers
std::vector< TRGCDCLayer * > _tsLayers
Track Segment layers.
Definition: TRGCDC.h:654
Belle2::TRGCDC::nAxialLayers
unsigned nAxialLayers(void) const
return # of axial layers.
Definition: TRGCDC.h:885
Belle2::TRGCDC::_rootFitter3DFilename
std::string _rootFitter3DFilename
The filename of root file for Fitter3D.
Definition: TRGCDC.h:564
Belle2::TRGCDC::_firmwareSimulationMode
unsigned _firmwareSimulationMode
Firmware simulation mode.
Definition: TRGCDC.h:516
Belle2::TRGCDC::nLayers
unsigned nLayers(void) const
return # of layers.
Definition: TRGCDC.h:906
Belle2::TRGCDC::_clockUser3125
const TRGClock _clockUser3125
CDC trigger user clock for Aurora 3.125 Gbps.
Definition: TRGCDC.h:688
Belle2::TRGCDC::nSegmentLayers
unsigned nSegmentLayers(void) const
returns # of track segment layers.
Definition: TRGCDC.h:1071
Belle2::TRGCDC::_cdc
static TRGCDC * _cdc
CDC trigger singleton.
Definition: TRGCDC.h:491
Belle2::TRGCDC::_tracks2D
TClonesArray * _tracks2D
2D track information
Definition: TRGCDC.h:766
Belle2::TRGCDC::_segmentHits
std::vector< TRGCDCSegmentHit * > _segmentHits
Track Segments with hits.
Definition: TRGCDC.h:657
Belle2::TRGCDC::m_treeAllTracks
TTree * m_treeAllTracks
root tree for MC tracks
Definition: TRGCDC.h:742
Belle2::TRGCDC::dump
void dump(const std::string &message) const
dumps debug information.
Definition: TRGCDC.cc:765
Belle2::TRGCDC::_fLRLUT
bool _fLRLUT
Switch for the LR LUT in Fitter3D.
Definition: TRGCDC.h:570
Belle2::TRGCDC::_r
float * _r
R of cell.
Definition: TRGCDC.h:669
Belle2::CDCTriggerTSFFirmwareModule
This class is the interface between TSim/Basf2 TSF module and the firmware simulation core of XSim/IS...
Definition: CDCTriggerTSFFirmwareModule.h:48
Belle2::TRGCDC::simulate
void simulate(void)
fast trigger simulation.
Definition: TRGCDC.cc:2047
Belle2::TRGCDC::_eventTime
std::vector< TRGCDCEventTime * > _eventTime
EventTime.
Definition: TRGCDC.h:730
Belle2::TRGCDC::_layers
std::vector< TRGCDCLayer * > _layers
All layers.
Definition: TRGCDC.h:618
Belle2::TRGCDC::fastClear
void fastClear(void)
clears TRGCDC information.
Definition: TRGCDC.cc:979
Belle2::TRGCDC::_fudgeFactor
float _fudgeFactor
Fudge factor for position error.
Definition: TRGCDC.h:663
Belle2::TRGCDC::_hits
std::vector< TRGCDCWireHit * > _hits
CDC hits.
Definition: TRGCDC.h:633
Belle2::TRGCDC::superLayer
const std::vector< TRGCDCLayer * > * superLayer(unsigned id) const
returns a pointer to a super-layer.
Definition: TRGCDC.h:836
Belle2::TRGCDC::m_mcTrackStatus
TClonesArray * m_mcTrackStatus
MC track status.
Definition: TRGCDC.h:760
Belle2::TRGCDCWire
A class to represent a wire in CDC.
Definition: Wire.h:57
Belle2::TRGCDC::_firmwareSimulationWindow
TRGSignal _firmwareSimulationWindow
Firmware simulation time window in FE.
Definition: TRGCDC.h:525
Belle2::TRGCDC::_innerTSLUTFilename
std::string _innerTSLUTFilename
The filename of LUT for the inner-most track segments.
Definition: TRGCDC.h:555
Belle2::TRGCDC::_h3DFinder
TRGCDCHough3DFinder * _h3DFinder
Hough 3D finder.
Definition: TRGCDC.h:724
Belle2::TRGCDC::updateByData
void updateByData(int inputMode)
updates TRGCDC wire information by Hardware data 0: From CDC FE ASCII file (Implementing) 1: From CDC...
Definition: TRGCDC.cc:1177
Belle2::TRGCDC::_fileFitter3D
bool _fileFitter3D
Switch for Fitter3D.root file.
Definition: TRGCDC.h:603
Belle2::TRGCDC::m_evtTime
TClonesArray * m_evtTime
Event time.
Definition: TRGCDC.h:763
Belle2::TRGCDC::superLayerR
float superLayerR(unsigned superLayerId) const
returns inner radius of super layer.
Definition: TRGCDC.h:920
Belle2::TRGCDC::m_mcParameters
TClonesArray * m_mcParameters
MC.
Definition: TRGCDC.h:751
Belle2::TRGCDCFrontEnd
A class to represent a CDC front-end board.
Definition: FrontEnd.h:36
Belle2::TRGCDC::_cdchitCollectionName
std::string _cdchitCollectionName
name of the CDCHit DataStore array used as input
Definition: TRGCDC.h:772
Belle2::TRGCDC::axialSegmentHits
std::vector< const TRGCDCSegmentHit * > axialSegmentHits(unsigned) const
returns a list of TRGCDCSegmentHit in a axial super layer N.
Definition: TRGCDC.h:1015
Belle2::TRGCDC::name
std::string name(void) const
simulates track segment decisions.
Definition: TRGCDC.cc:90
Belle2::TRGCDC::m_mcTrack4Vector
TClonesArray * m_mcTrack4Vector
MC track.
Definition: TRGCDC.h:754
Belle2::TRGCDC::axialHits
std::vector< const TRGCDCWireHit * > axialHits(void) const
returns a list of axial hits.
Definition: TRGCDC.cc:1677
Belle2::TRGCDC::_fprintFirmETF
bool _fprintFirmETF
Switch for printing Firmware inputs for ETF.
Definition: TRGCDC.h:594
Belle2::TRGCDC::_r2
float * _r2
R^2 of cell.
Definition: TRGCDC.h:672
Belle2::TRGCDC::nWires
unsigned nWires(void) const
return # of wires.
Definition: TRGCDC.h:864
Belle2::TRGCDC::stereoHits
std::vector< const TRGCDCWireHit * > stereoHits(void) const
returns a list of stereo hits.
Definition: TRGCDC.cc:1690
Belle2::TRGCDC::_cdcVersion
const std::string _cdcVersion
CDC version.
Definition: TRGCDC.h:497
Belle2::TRGCDCMerger
A class to represent a CDC merger board.
Definition: Merger.h:35
Belle2::TRGCDC::TDCClock
const TRGClock & TDCClock(void) const
returns the system clock of the trigger TDC after mergers (2 * front-end binwidth)
Definition: TRGCDC.h:976
Belle2::TRGCDCTracker2D
A class to represent a CDC 2D tracker board.
Definition: Tracker2D.h:36
Belle2::TRGCDC::dataClock
const TRGClock & dataClock(void) const
returns the data clock.
Definition: TRGCDC.h:983
Belle2::TRGCDC::_perfect3DFinder
const bool _perfect3DFinder
Switch to activate perfect 3D finder.
Definition: TRGCDC.h:552
Belle2::TRGCDC::updateMC
void updateMC(void)
updates TRGCDC information for MC.
Belle2::TRGCDC::layer
const TRGCDCLayer * layer(unsigned id) const
returns a pointer to a layer. 0 will be returned if 'id' is invalid.
Definition: TRGCDC.h:829
Belle2::TRGCDC::_debugLevel
int _debugLevel
Debug level.
Definition: TRGCDC.h:494
Belle2::TRGCDC::neighbor
bool neighbor(const TRGCDCWire &w0, const TRGCDCWire &w1) const
returns true if w0 and w1 are neighbor.
Definition: TRGCDC.cc:2028
Belle2::TRGCDCLayer
A class to represent a cell layer.
Definition: Layer.h:34
Belle2::TRGCDC::hitsMC
std::vector< const TRGCDCWireHitMC * > hitsMC(void) const
returns a list of TRGCDCWireHitMC.
Definition: TRGCDC.cc:1749
Belle2::TRGCDC::_firmwareSimulationStartDataClock
int _firmwareSimulationStartDataClock
Firmware simulation start clock in CDCTRG data clock.
Definition: TRGCDC.h:528
Belle2::TRGCDC::_finder3DMode
int _finder3DMode
Sets mode of 3DFinder.
Definition: TRGCDC.h:600
Belle2::TRGCDC::_clockFE
const TRGClock _clockFE
CDC front end clock. Resolution is CDC TdcBinWidth.
Definition: TRGCDC.h:678
Belle2::TRGCDC::initialize
void initialize(unsigned houghFinderPeakMin, const std::string &houghMappingFilePlus, const std::string &houghMappingFileMinus, unsigned houghDoit)
initializes CDC geometry.
Definition: TRGCDC.cc:370
Belle2::TRGCDC::_hitsMC
std::vector< TRGCDCWireHitMC * > _hitsMC
MC info. of CDC hits.
Definition: TRGCDC.h:645
Belle2::TRGCDC::_tsFinder
TRGCDCTrackSegmentFinder * _tsFinder
Track Segement Finder.
Definition: TRGCDC.h:712
Belle2::TRGCDC::getTrackList2D
std::vector< TRGCDCTrack * > getTrackList2D(void)
returns 2D track list (no fit).
Definition: TRGCDC.cc:198
Belle2::TRGCDC::debugLevel
int debugLevel(void) const
returns debug level.
Definition: TRGCDC.h:806
Belle2::TRGCDC::_returnValue
int _returnValue
Return value for trg cdc module;.
Definition: TRGCDC.h:534
Belle2::TRGCDC::m_fitParameters
TClonesArray * m_fitParameters
3D fit
Definition: TRGCDC.h:748
Belle2::TRGCDC::classification
void classification(void)
classify hits.
Definition: TRGCDC.cc:1602
Belle2::TRGCDC::_fastSimulationMode
unsigned _fastSimulationMode
Fast simulation mode.
Definition: TRGCDC.h:506
Belle2::TRGCDC::superLayerId
unsigned superLayerId(unsigned wireId) const
returns super layer ID. This function is expensive.
Definition: TRGCDC.cc:1818
Belle2::TRGCDC::nSuperLayers
unsigned nSuperLayers(void) const
returns # of super layers.
Definition: TRGCDC.h:871
Belle2::TRGCDC::firmwareSimulationStartDataClock
int firmwareSimulationStartDataClock(void) const
returns start clock of the firmware simulation in data clock.
Definition: TRGCDC.h:1127
Belle2::TRGCDC::_p3DFinder
TRGCDCPerfectFinder * _p3DFinder
Perfect 3D finder.
Definition: TRGCDC.h:718
Belle2::CDC::CDCGeometryPar
The Class for CDC Geometry Parameters.
Definition: CDCGeometryPar.h:75
Belle2::TRGCDC::superLayerR2
float superLayerR2(unsigned superLayerId) const
returns (inner radius)^2 of super layer.
Definition: TRGCDC.h:927
Belle2::TRGCDC::_offset
const double _offset
Timing offset of CDC trigger.
Definition: TRGCDC.h:694
Belle2::TRGCDC::layerId
unsigned layerId(unsigned wireId) const
returns layer ID. This function is expensive.
Definition: TRGCDC.cc:1791
Belle2::TRGCDC::_clock
const TRGClock _clock
CDC trigger system clock.
Definition: TRGCDC.h:675
Belle2::TRGCDC::getReturnValue
int getReturnValue(void) const
gets return value for trg cdc module.
Definition: TRGCDC.h:1099
Belle2::TRGCDC::firmwareSimulationStopDataClock
int firmwareSimulationStopDataClock(void) const
returns stop clock of the firmware simulation in data clock.
Definition: TRGCDC.h:1134
Belle2::TRGCDC::_trgCDCDataInputMode
int _trgCDCDataInputMode
Switch for TRG CDC input mode.
Definition: TRGCDC.h:769
Belle2::TRGCDC::_fFitter3Ds2DFitDrift
bool _fFitter3Ds2DFitDrift
Switch to us wire 2D fit or drift 2D fit.
Definition: TRGCDC.h:579
Belle2::TRGCDCHough3DFinder
class of TRGCDCHough3DFinder
Definition: Hough3DFinder.h:36
Belle2::TRGCDC::_mergers
std::vector< TRGCDCMerger * > _mergers
CDC trigger merger boards.
Definition: TRGCDC.h:703
Belle2::TRGCDCTrackSegmentFinder
a class of TrackSegmentFinder in TRGCDC
Definition: TrackSegmentFinder.h:41
Belle2::TRGCDC::wireName
std::string wireName(unsigned wireId) const
returns wire name.
Definition: TRGCDC.cc:1757
Belle2::TRGCDC::segmentLayer
const TRGCDCLayer * segmentLayer(unsigned id) const
returns a pointer to a track segment layer.
Definition: TRGCDC.h:1062
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::TRGCDC::systemClock
const TRGClock & systemClock(void) const
calculates corrected drift time.
Definition: TRGCDC.h:962
Belle2::TRGCDC::m_rootCDCHitInformation
TClonesArray * m_rootCDCHitInformation
[0]: iLayer, [1]: iWire, [2]: CDCADC, [3]: CDCTDC, [4]: CDC FE TRG timing
Definition: TRGCDC.h:782
Belle2::TRGCDC::_fileTSF
bool _fileTSF
Switch for TSF.root file.
Definition: TRGCDC.h:585
Belle2::TRGCDC::nLocalLayers
unsigned nLocalLayers(unsigned superLayerId) const
returns # of wire layers in a super layer.
Definition: TRGCDC.h:820
Belle2::TRGCDC::EReturnValueType
EReturnValueType
Enum for returnValue types.
Definition: TRGCDC.h:75
Belle2::TRGCDC::_fverETF
int _fverETF
Switch for selecting ETF version.
Definition: TRGCDC.h:591
Belle2::TRGCDC::getTRGCDC
static TRGCDC * getTRGCDC(void)
returns TRGCDC object.
Definition: TRGCDC.cc:190
Belle2::TRGCDC::perfect3DFinder
void perfect3DFinder(std::vector< TRGCDCTrack * > trackList) const
fills stereo TSs to tracks using MC info.
Belle2::TRGCDC::localLayerId
unsigned localLayerId(unsigned wireId) const
returns local layer ID in a super layer. This function is expensive.
Definition: TRGCDC.cc:1840
Belle2::TRGCDC::m_file
TFile * m_file
root file
Definition: TRGCDC.h:736
Belle2::TRGCDC::_segmentHitsSL
std::vector< TRGCDCSegmentHit * > _segmentHitsSL[9]
Track Segments with hits in each super layer.
Definition: TRGCDC.h:660
Belle2::TRGCDC::_fronts
std::vector< TRGCDCFrontEnd * > _fronts
CDC front-end boards.
Definition: TRGCDC.h:700
Belle2::TRGCDC::tsfboard
TRGCDCTrackSegmentFinder * tsfboard(unsigned id) const
returns a TSF board.
Definition: TRGCDC.h:1048
Belle2::TRGCDC::_fileHough3D
bool _fileHough3D
Switch for Hough3D.root file.
Definition: TRGCDC.h:597
Belle2::TRGCDC::getCDCHitCollectionName
std::string getCDCHitCollectionName() const
get name of the CDCHit DataStore array used as input
Definition: TRGCDC.h:248
Belle2::TRGCDC::_axialHits
std::vector< TRGCDCWireHit * > _axialHits
CDC hits on axial wires.
Definition: TRGCDC.h:636
Belle2::TRGCDC::_clockTDC
const TRGClock _clockTDC
CDC trigger TDC clock.
Definition: TRGCDC.h:682
Belle2::TRGCDC::getEventTime
int getEventTime(void) const
returns bad hits(finding invalid hits).
Definition: TRGCDC.cc:2740
Belle2::TRGCDC::_hitWires
std::vector< TRGCDCWire * > _hitWires
Wires with a hit.
Definition: TRGCDC.h:630
Belle2::TRGCDC::_tsSL
std::vector< TRGCDCSegment * > _tsSL[9]
Track Segments.
Definition: TRGCDC.h:651
Belle2::TRGCDC::m_rootTRGHitInformation
TClonesArray * m_rootTRGHitInformation
[0]: iLayer, [1]: iWire, [2]: window number, [3]: priority timing
Definition: TRGCDC.h:784
Belle2::TRGCDC::segment
const TRGCDCSegment & segment(unsigned id) const
returns a track segment.
Definition: TRGCDC.h:934
Belle2::TRGCDC::_firmwareSimulationStop
int _firmwareSimulationStop
Fimrware simulation stop clock in FE.
Definition: TRGCDC.h:522
Belle2::TRGCDC::version
std::string version(void) const
returns version.
Definition: TRGCDC.cc:96
Belle2::TRGCDC::setReturnValue
void setReturnValue(EReturnValueType const &moduleName, bool flag)
sets return value for trg cdc module.
Definition: TRGCDC.cc:2745
Belle2::TRGCDC::_tree2D
TTree * _tree2D
root tree for 2D tracks
Definition: TRGCDC.h:745
Belle2::TRGCDC::mode
unsigned mode(void) const
sets simulation mode.
Definition: TRGCDC.h:1078
Belle2::TRGCDC::_stereoSuperLayers
std::vector< std::vector< TRGCDCLayer * > * > _stereoSuperLayers
Stereo super layers.
Definition: TRGCDC.h:615
Belle2::TRGCDC
The instance of TRGCDC is a singleton.
Definition: TRGCDC.h:70
Belle2::TRGCDC::_fXtSimpleFitter3D
bool _fXtSimpleFitter3D
Switch for using simple x-t curve or non-linear x-t curve. 0: non-linear 1: simple.
Definition: TRGCDC.h:606
Belle2::TRGCDC::cellWidth
float cellWidth(unsigned superLayerId) const
returns cell width in unit of radian.
Definition: TRGCDC.h:913
Belle2::TRGCDC::m_cdcp
CDC::CDCGeometryPar * m_cdcp
returns a pointer to CDCGeometryPar
Definition: TRGCDC.h:253
Belle2::TRGCDC::nStereoLayers
unsigned nStereoLayers(void) const
returns # of stereo layers.
Definition: TRGCDC.h:878
Belle2::TRGCDCModule
A module to simulate the CDC trigger.
Definition: TRGCDCModule.h:32
Belle2::TRGCDCSegment
A class to represent a wire in CDC.
Definition: Segment.h:40
Belle2::TRGCDC::_fFitter3Ds2DFit
bool _fFitter3Ds2DFit
Switch to us 2D fit or Hough finder results.
Definition: TRGCDC.h:576
Belle2::TRGCDC::_simulationMode
unsigned _simulationMode
Simulation mode.
Definition: TRGCDC.h:503
Belle2::TRGCDC::userClock3125
const TRGClock & userClock3125(void) const
returns the user clock for Aurora 3.125 Gbps.
Belle2::TRGCDC::nStereoSuperLayers
unsigned nStereoSuperLayers(void) const
returns # of stereo super layers.
Definition: TRGCDC.h:899
Belle2::TRGCDC::update
void update()
updates TRGCDC wire information. clear() is called in this function.
Definition: TRGCDC.cc:982
Belle2::TRGCDC::TRGCDC
TRGCDC(const std::string &configFile, unsigned simulationMode, unsigned fastSimulationMode, unsigned firmwareSimulationMode, int firmwareSimulationStart, int firmwareSimulationStop, bool makeRootFile, bool perfect2DFinder, bool perfect3DFinder, const std::string &innerTSLUTFile, const std::string &outerTSLUTFile, const std::string &rootTRGCDCFile, const std::string &rootFitter3DFile, unsigned houghFinderPeakMin, const std::string &houghMappingFilePlus, const std::string &houghMappingFileMinus, unsigned houghDoit, bool fLogicLUTTSF, bool fLRLUT, bool fFitter3Dsmclr, bool fFitter3Ds2DFit, bool fFitter3Ds2DFitDrift, double inefficiecny, bool fileTSF, bool fileETF, int fverETF, bool fprintFirmETF, bool fileHough3D, int finder3DMode, bool fileFitter3D, bool fXtSimpleFitter3D, double TdcBinWidth, int trgCDCDataInputMode, const std::string &cdchitCollectionName)
Constructor.
Definition: TRGCDC.cc:215
Belle2::TRGCDC::_badHits
std::vector< TRGCDCWireHit * > _badHits
Bad CDC hits.(not used now)
Definition: TRGCDC.h:642
Belle2::TRGCDC::saveCDCHitInformation
void saveCDCHitInformation(std::vector< std::vector< unsigned > > &)
Save functions for ROOT.
Definition: TRGCDC.cc:2757
Belle2::TRGCDC::firmwareSimulationStart
int firmwareSimulationStart(void) const
returns start clock of the firmware simulation in FE clock.
Definition: TRGCDC.h:1113
Belle2::TRGCDC::m_tree
TTree * m_tree
root tree for reconstructed 3D tracks
Definition: TRGCDC.h:739
Belle2::TRGCDC::_stereoHits
std::vector< TRGCDCWireHit * > _stereoHits
CDC hits on stereo wires.
Definition: TRGCDC.h:639
Belle2::TRGCDC::_links
std::vector< TRGLink * > _links
All serial links.
Definition: TRGCDC.h:697
Belle2::TRGCDC::_perfect2DFinder
const bool _perfect2DFinder
Switch to activate perfect 2D finder.
Definition: TRGCDC.h:549
Belle2::TRGCDC::systemClockFE
const TRGClock & systemClockFE(void) const
returns the system clock of the front-end
Definition: TRGCDC.h:969
Belle2::TRGCDC::m_eventNum
int m_eventNum
Event number.
Definition: TRGCDC.h:733
Belle2::TRGCDC::_makeRootFile
bool _makeRootFile
Switch for TRGCDC.root file.
Definition: TRGCDC.h:546
Belle2::TRGCDC::_rootTRGCDCFilename
std::string _rootTRGCDCFilename
The filename of root file for TRGCDC.
Definition: TRGCDC.h:561
Belle2::TRGCDC::hits
std::vector< const TRGCDCWireHit * > hits(void) const
returns a list of TRGCDCWireHit.
Definition: TRGCDC.cc:1703
Belle2::TRGCDC::clear
void clear(void)
clears all TRGCDC hit information.
Definition: TRGCDC.cc:940
HepGeom::Point3D
Definition: TRGCDC.h:28
Belle2::TRGCDC::fastSimulation
void fastSimulation(void)
Fast simulation.
Definition: TRGCDC.cc:2062
Belle2::TRGCDCHoughFinder
A class to find tracks using Hough algorithm.
Definition: HoughFinder.h:43
Belle2::TRGCDC::_stereoLayers
std::vector< TRGCDCLayer * > _stereoLayers
Stereo layers.
Definition: TRGCDC.h:624
Belle2::TRGCDC::terminate
void terminate(void)
terminates when run is finished
Definition: TRGCDC.cc:737
Belle2::TRGCDC::_trackList2DFitted
std::vector< TRGCDCTrack * > _trackList2DFitted
Track list for 2D fitted tracks.
Definition: TRGCDC.h:540
Belle2::TRGCDC::nAxialSuperLayers
unsigned nAxialSuperLayers(void) const
return # of axial super layers.
Definition: TRGCDC.h:892
Belle2::TRGCDC::_inefficiency
double _inefficiency
Hit inefficiency parameter.
Definition: TRGCDC.h:582
Belle2::TRGCDC::_superLayers
std::vector< std::vector< TRGCDCLayer * > * > _superLayers
Super layers.
Definition: TRGCDC.h:609
Belle2::TRGCDC::saveTRGHitInformation
void saveTRGHitInformation(std::vector< std::vector< int > > &)
Save functions for ROOT.
Definition: TRGCDC.cc:2772
Belle2::TRGCDC::firmwareSimulationStop
int firmwareSimulationStop(void) const
returns stop clock of the firmware simulation in FE clock.
Definition: TRGCDC.h:1120
Belle2::TRGCDC::merger
const TRGCDCMerger * merger(unsigned id) const
returns a merger board.
Definition: TRGCDC.h:1041
Belle2::TRGCDC::nSegments
unsigned nSegments(void) const
returns # of track segments.
Definition: TRGCDC.h:955
Belle2::TRGCDC::m_rootTRGRawInformation
TClonesArray * m_rootTRGRawInformation
[0]: iLayer, [1]: iWire, [2]: Timing(CDC), [3]: MatchNumber MatchNumber: 1: Only CDC,...
Definition: TRGCDC.h:789
Belle2::TRGCDC::configure
void configure(void)
configures trigger modules for firmware simulation.
Definition: TRGCDC.cc:2448
Belle2::TRGCDC::saveTRGRawInformation
void saveTRGRawInformation(std::vector< std::string > &)
Save functions for ROOT.
Definition: TRGCDC.cc:2786
Belle2::TRGCDC::axialStereoSuperLayerId
unsigned axialStereoSuperLayerId(unsigned axialStereo, unsigned axialStereoLayerId) const
returns axialStereo super layer ID. This function is expensive.
Definition: TRGCDC.cc:1863
Belle2::TRGCDC::_axialLayers
std::vector< TRGCDCLayer * > _axialLayers
Axial layers.
Definition: TRGCDC.h:621
Belle2::TRGCDC::tracker2D
const TRGCDCTracker2D * tracker2D(unsigned id) const
returns a 2D tracker board.
Definition: TRGCDC.h:1055
Belle2::TRGCDCFitter3D
A class to fit tracks in 3D.
Definition: Fitter3D.h:41
Belle2::TRGClock
A class to represent a digitized signal. Unit is nano second.
Definition: Clock.h:43
Belle2::TRGCDC::versionCDC
std::string versionCDC(void) const
returns CDC version.
Definition: TRGCDC.h:857
Belle2::TRGCDC::~TRGCDC
virtual ~TRGCDC()
Destructor.
Definition: TRGCDC.cc:2001
Belle2::TRGCDC::_tss
std::vector< TRGCDCSegment * > _tss
Track Segments.
Definition: TRGCDC.h:648
Belle2::TRGCDC::_fileETF
bool _fileETF
Switch for ETF.root file.
Definition: TRGCDC.h:588
Belle2::TRGCDC::m_mcTrackVertexVector
TClonesArray * m_mcTrackVertexVector
MC vertex.
Definition: TRGCDC.h:757
Belle2::TRGCDC::_firmwareSimulationStopDataClock
int _firmwareSimulationStopDataClock
Firmware simulation stop clock in CDCTRG data clock.
Definition: TRGCDC.h:531
Belle2::TRGCDC::_fFitter3Dsmclr
bool _fFitter3Dsmclr
Switch for MC L/R information in Fitter3D.
Definition: TRGCDC.h:573
Belle2::TRGCDC::_firmwareSimulationStart
int _firmwareSimulationStart
Fimrware simulation start clock in FE.
Definition: TRGCDC.h:519
Belle2::TRGCDC::_pFinder
TRGCDCPerfectFinder * _pFinder
Perfect 2D finder.
Definition: TRGCDC.h:715
Belle2::TRGCDC::_trackList3D
std::vector< TRGCDCTrack * > _trackList3D
Track list for 3D fitted tracks.
Definition: TRGCDC.h:543
Belle2::TRGCDC::wire
const TRGCDCWire * wire(unsigned wireId) const
returns a pointer to a wire.
Definition: TRGCDC.cc:890
Belle2::TRGCDC::_trackList2D
std::vector< TRGCDCTrack * > _trackList2D
Track list by 2D finding.
Definition: TRGCDC.h:537