CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
DTSC.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
12 //
13 //
14 //--------------------------------------------------
15 #ifndef DT_SC_H
16 #define DT_SC_H
17 
18 //------------------------------------
19 // Collaborating Class Declarations --
20 //------------------------------------
21 class DTTracoTrigData;
22 class DTChambPhSegm;
23 class DTSectCollPhCand;
24 class DTSectCollThCand;
25 class DTConfigSectColl;
26 class DTTrigGeom;
27 
28 //----------------------
29 // Base Class Headers --
30 //----------------------
32 
33 //---------------
34 // C++ Headers --
35 //---------------
36 #include <vector>
37 
38 // ---------------------
39 // -- Class Interface --
40 // ---------------------
41 
42 
43 class DTSC{
44 
45  public:
46 
48  DTSC(int istat);
49 
51  ~DTSC();
52 
53  // non-const methods
54 
57 
59  void addPhCand(DTSectCollPhCand* cand);
60 
62  void addThCand(DTSectCollThCand* cand);
63 
64  // CB CONTROLLA LA DIFFERENZA TRA QUESTO E addPhCand!!!!!!!!!!
67 
68 
71 
73  void run();
74 
77 
80 
82  void clear();
83 
84  // const methods
85 
87  inline DTConfigSectColl* config() const { return _config; }
88 
90  unsigned nCandPh (int ifs) const;
91 
93  unsigned nCandTh () const;
94 
96  inline int nFirstTPh() const { return _incand_ph[0].size(); }
97 
99  inline int nSecondTPh() const { return _incand_ph[1].size(); }
100 
102  DTSectCollPhCand* getDTSectCollPhCand(int ifs, unsigned n) const;
103 
105  DTSectCollThCand* getDTSectCollThCand(unsigned n) const;
106 
108  inline int nTracksPh() const { return _outcand_ph.size(); }
109 
111  inline int nTracksTh() const { return _cand_th.size(); }
112 
114  DTSectCollPhCand* getTrackPh(int n) const ;
115 
117  DTSectCollThCand* getTrackTh(int n) const ;
118 
119  private:
120 
121  // Configuration
123 
124  // input phi data
125  std::vector<DTSectCollPhCand*> _incand_ph[2];
126 
127  // output phi data
128  std::vector<DTSectCollPhCand*> _outcand_ph;
129 
130  // theta data
131  std::vector<DTSectCollThCand*> _cand_th;
132 
133  // internal use variables
135 
136  // station number [1-5]
137  int _stat;
138 
139 };
140 
141 #endif
int nFirstTPh() const
Return the number of input first tracks.
Definition: DTSC.h:96
std::vector< DTSectCollPhCand * > _incand_ph[2]
Definition: DTSC.h:125
void setConfig(DTConfigSectColl *conf)
Set configuration.
Definition: DTSC.h:56
unsigned nCandPh(int ifs) const
Return the number of Phi input tracks (first/second)
Definition: DTSC.cc:250
std::vector< DTSectCollThCand * > _cand_th
Definition: DTSC.h:131
int _stat
Definition: DTSC.h:137
DTSectCollPhCand * DTSectCollsort2()
Phi Sort 2.
Definition: DTSC.cc:194
Definition: DTSC.h:43
DTSC(int istat)
Constructor.
Definition: DTSC.cc:42
DTSectCollThCand * getTrackTh(int n) const
Return the requested Theta track.
Definition: DTSC.cc:328
DTSectCollPhCand * getDTSectCollPhCand(int ifs, unsigned n) const
Return requested TSS candidate.
Definition: DTSC.cc:270
void ignoreSecondTrack()
Set a flag to skip sort2.
Definition: DTSC.h:70
DTConfigSectColl * _config
Definition: DTSC.h:122
void addDTSectCollPhCand(DTSectCollPhCand *cand)
Add a Sector Collector.
Definition: DTSC.cc:303
std::vector< DTSectCollPhCand * > _outcand_ph
Definition: DTSC.h:128
void addThCand(DTSectCollThCand *cand)
Add a Theta candidate to sect coll.
Definition: DTSC.cc:242
void addPhCand(DTSectCollPhCand *cand)
Add a TSM candidate to the Sect Coll, ifs is first/second track flag.
Definition: DTSC.cc:235
DTSectCollPhCand * getTrackPh(int n) const
Return the requested Phi track.
Definition: DTSC.cc:312
tuple conf
Definition: dbtoconf.py:185
int _ignoreSecondTrack
Definition: DTSC.h:134
void run()
Run the Sector Collector algorithm.
Definition: DTSC.cc:84
DTSectCollThCand * getDTSectCollThCand(unsigned n) const
Return requested Theta candidate.
Definition: DTSC.cc:289
~DTSC()
Destructor.
Definition: DTSC.cc:55
int nTracksPh() const
Return the number of output Phi tracks.
Definition: DTSC.h:108
DTSectCollPhCand * DTSectCollsort1()
Phi Sort 1.
Definition: DTSC.cc:141
unsigned nCandTh() const
Return the number of Theta input tracks.
Definition: DTSC.cc:262
void clear()
Clear.
Definition: DTSC.cc:67
DTConfigSectColl * config() const
Configuration set.
Definition: DTSC.h:87
int nSecondTPh() const
Return the number of input second tracks.
Definition: DTSC.h:99
int nTracksTh() const
Return the number of output Theta tracks.
Definition: DTSC.h:111