CMS 3D CMS Logo

DTTSPhi.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
10 //
11 //--------------------------------------------------
12 #ifndef DT_TS_PHI_H
13 #define DT_TS_PHI_H
14 
15 //-------------------
16 // Constants file --
17 //-------------------
18 
19 //------------------------------------
20 // Collaborating Class Declarations --
21 //------------------------------------
22 class DTTracoCard;
23 class DTTracoTrigData;
24 class DTTSS;
25 class DTTSM;
26 class DTSectColl;
27 class DTTSCand;
28 class DTTrigGeom;
29 
30 //----------------------
31 // Base Class Headers --
32 //----------------------
38 
40 
41 //---------------
42 // C++ Headers --
43 //---------------
44 #include <vector>
45 
46 // ---------------------
47 // -- Class Interface --
48 // ---------------------
49 
50 typedef std::vector<DTChambPhSegm> DTChambPhVector;
52 
53 class DTTSPhi : public DTTSPhiManager, public DTGeomSupplier {
54 
55 public:
58 
60  ~DTTSPhi() override;
61 
63  inline const DTConfigTSPhi *config() const { return _config; }
64 
66  void setConfig(const DTConfigManager *conf);
67 
69  int nSegm(int step);
70 
72  const DTChambPhSegm *segment(int step, unsigned n);
73 
75  LocalPoint localPosition(const DTTrigData *) const override;
76 
78  LocalVector localDirection(const DTTrigData *) const override;
79 
81  void reconstruct() override {
82  loadTSPhi();
83  runTSPhi();
84  }
85 
86 private:
88  void loadTSPhi();
89 
91  void runTSPhi();
92 
95  void addTracoT(int step, const DTTracoTrigData *tracotrig, int ifs);
96 
98  void ignoreSecondTrack(int step, int tracon);
99 
101  void localClear();
102 
103  // Return a DTTSS
104  DTTSS *getDTTSS(int step, unsigned n) const;
105 
106  // SM double TSM
107  // Return a DTTSM
108  DTTSM *getDTTSM(int step, unsigned n) const;
109 
110 private:
112 
114 
115  // Components
116  std::vector<DTTSS *> _tss[DTConfigTSPhi::NSTEPL - DTConfigTSPhi::NSTEPF + 1];
117  // DBSM-doubleTSM
118  std::vector<DTTSM *> _tsm[DTConfigTSPhi::NSTEPL - DTConfigTSPhi::NSTEPF + 1];
119 
120  // Input data
121  std::vector<DTTSCand *>
123 };
124 
125 #endif
LocalPoint localPosition(const DTTrigData *) const override
Local position in chamber of a trigger-data object.
Definition: DTTSPhi.cc:566
std::vector< DTTSM * > _tsm[DTConfigTSPhi::NSTEPL-DTConfigTSPhi::NSTEPF+1]
Definition: DTTSPhi.h:118
void reconstruct() override
Load TRACO triggers and run TSPhi algorithm.
Definition: DTTSPhi.h:81
int nSegm(int step)
Return number of DTTSPhi segments.
Definition: DTTSPhi.cc:546
void runTSPhi()
run DTTSPhi algorithm (DTTSS+DTTSM)
Definition: DTTSPhi.cc:232
void loadTSPhi()
store DTTracoChip triggers in the DTTSS&#39;s
Definition: DTTSPhi.cc:146
static const int NSTEPF
Definition: DTConfig.h:36
const DTConfigTSPhi * config() const
Return the configuration class.
Definition: DTTSPhi.h:63
Definition: DTTSM.h:38
DTTSS * getDTTSS(int step, unsigned n) const
Definition: DTTSPhi.cc:511
void ignoreSecondTrack(int step, int tracon)
Set a flag to ignore second tracks (if first track at following BX)
Definition: DTTSPhi.cc:481
DTCache< DTChambPhSegm, DTChambPhVector > DTTSPhiManager
Definition: DTTSPhi.h:51
const DTChambPhSegm * segment(int step, unsigned n)
Return the requested DTTSPhi segment.
Definition: DTTSPhi.cc:556
static const int NSTEPL
Constants: first and last step to start trigger finding.
Definition: DTConfig.h:36
const DTConfigTSPhi * _config
Definition: DTTSPhi.h:113
~DTTSPhi() override
Destructor.
Definition: DTTSPhi.cc:76
DTTracoCard * _tracocard
Definition: DTTSPhi.h:111
std::vector< DTTSCand * > _tctrig[DTConfigTSPhi::NSTEPL-DTConfigTSPhi::NSTEPF+1]
Definition: DTTSPhi.h:122
DTTSPhi(DTTrigGeom *, DTTracoCard *)
Constructor.
Definition: DTTSPhi.cc:44
std::vector< DTChambPhSegm > DTChambPhVector
Definition: DTTSPhi.h:28
Definition: DTTSS.h:36
void setConfig(const DTConfigManager *conf)
Set configuration.
Definition: DTTSPhi.cc:125
void localClear()
Clear.
Definition: DTTSPhi.cc:103
void addTracoT(int step, const DTTracoTrigData *tracotrig, int ifs)
Definition: DTTSPhi.cc:177
std::vector< DTTSS * > _tss[DTConfigTSPhi::NSTEPL-DTConfigTSPhi::NSTEPF+1]
Definition: DTTSPhi.h:116
LocalVector localDirection(const DTTrigData *) const override
Local direction in chamber of a trigger-data object.
Definition: DTTSPhi.cc:579
step
Definition: StallMonitor.cc:94
DTTSM * getDTTSM(int step, unsigned n) const
Definition: DTTSPhi.cc:529