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 public:
57 
59  ~DTTSPhi() override;
60 
62  inline const DTConfigTSPhi *config() const { return _config; }
63 
65  void setConfig(const DTConfigManager *conf);
66 
68  int nSegm(int step);
69 
71  const DTChambPhSegm *segment(int step, unsigned n);
72 
74  LocalPoint localPosition(const DTTrigData *) const override;
75 
77  LocalVector localDirection(const DTTrigData *) const override;
78 
80  void reconstruct() override {
81  loadTSPhi();
82  runTSPhi();
83  }
84 
85 private:
87  void loadTSPhi();
88 
90  void runTSPhi();
91 
94  void addTracoT(int step, const DTTracoTrigData *tracotrig, int ifs);
95 
97  void ignoreSecondTrack(int step, int tracon);
98 
100  void localClear();
101 
102  // Return a DTTSS
103  DTTSS *getDTTSS(int step, unsigned n) const;
104 
105  // SM double TSM
106  // Return a DTTSM
107  DTTSM *getDTTSM(int step, unsigned n) const;
108 
109 private:
111 
113 
114  // Components
115  std::vector<DTTSS *> _tss[DTConfigTSPhi::NSTEPL - DTConfigTSPhi::NSTEPF + 1];
116  // DBSM-doubleTSM
117  std::vector<DTTSM *> _tsm[DTConfigTSPhi::NSTEPL - DTConfigTSPhi::NSTEPF + 1];
118 
119  // Input data
120  std::vector<DTTSCand *> _tctrig[DTConfigTSPhi::NSTEPL - DTConfigTSPhi::NSTEPF + 1];
121 };
122 
123 #endif
void reconstruct() override
Load TRACO triggers and run TSPhi algorithm.
Definition: DTTSPhi.h:80
int nSegm(int step)
Return number of DTTSPhi segments.
Definition: DTTSPhi.cc:459
void runTSPhi()
run DTTSPhi algorithm (DTTSS+DTTSM)
Definition: DTTSPhi.cc:215
DTTSS * getDTTSS(int step, unsigned n) const
Definition: DTTSPhi.cc:430
void loadTSPhi()
store DTTracoChip triggers in the DTTSS&#39;s
Definition: DTTSPhi.cc:137
static const int NSTEPF
Definition: DTConfig.h:35
Definition: DTTSM.h:38
void ignoreSecondTrack(int step, int tracon)
Set a flag to ignore second tracks (if first track at following BX)
Definition: DTTSPhi.cc:403
DTCache< DTChambPhSegm, DTChambPhVector > DTTSPhiManager
Definition: DTTSPhi.h:51
const DTChambPhSegm * segment(int step, unsigned n)
Return the requested DTTSPhi segment.
Definition: DTTSPhi.cc:469
std::vector< DTTSM * > _tsm[DTConfigTSPhi::NSTEPL - DTConfigTSPhi::NSTEPF+1]
Definition: DTTSPhi.h:117
static const int NSTEPL
Constants: first and last step to start trigger finding.
Definition: DTConfig.h:35
std::vector< DTTSS * > _tss[DTConfigTSPhi::NSTEPL - DTConfigTSPhi::NSTEPF+1]
Definition: DTTSPhi.h:115
const DTConfigTSPhi * _config
Definition: DTTSPhi.h:112
LocalPoint localPosition(const DTTrigData *) const override
Local position in chamber of a trigger-data object.
Definition: DTTSPhi.cc:478
~DTTSPhi() override
Destructor.
Definition: DTTSPhi.cc:73
DTTracoCard * _tracocard
Definition: DTTSPhi.h:110
DTTSM * getDTTSM(int step, unsigned n) const
Definition: DTTSPhi.cc:445
DTTSPhi(DTTrigGeom *, DTTracoCard *)
Constructor.
Definition: DTTSPhi.cc:46
std::vector< DTChambPhSegm > DTChambPhVector
Definition: DTTSPhi.h:28
Definition: DTTSS.h:36
void setConfig(const DTConfigManager *conf)
Set configuration.
Definition: DTTSPhi.cc:119
void localClear()
Clear.
Definition: DTTSPhi.cc:98
std::vector< DTTSCand * > _tctrig[DTConfigTSPhi::NSTEPL - DTConfigTSPhi::NSTEPF+1]
Definition: DTTSPhi.h:120
void addTracoT(int step, const DTTracoTrigData *tracotrig, int ifs)
Definition: DTTSPhi.cc:164
step
Definition: StallMonitor.cc:83
const DTConfigTSPhi * config() const
Return the configuration class.
Definition: DTTSPhi.h:62
LocalVector localDirection(const DTTrigData *) const override
Local direction in chamber of a trigger-data object.
Definition: DTTSPhi.cc:490