CMS 3D CMS Logo

L1MuDTExtrapolationUnit.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
19 //
20 //--------------------------------------------------
21 #ifndef L1MUDT_EXTRAPOLATION_UNIT_H
22 #define L1MUDT_EXTRAPOLATION_UNIT_H
23 
24 //---------------
25 // C++ Headers --
26 //---------------
27 
28 #include <utility>
29 #include <map>
30 #include <bitset>
31 
32 //----------------------
33 // Base Class Headers --
34 //----------------------
35 
37 
38 //------------------------------------
39 // Collaborating Class Declarations --
40 //------------------------------------
41 
45 class L1MuDTSEU;
46 class L1MuDTTFParameters;
47 
48 // ---------------------
49 // -- Class Interface --
50 // ---------------------
51 
53 public:
54  typedef std::pair<Extrapolation, unsigned int> SEUId;
55  typedef std::map<SEUId, L1MuDTSEU*, std::less<SEUId> > SEUmap;
56 
59 
61  ~L1MuDTExtrapolationUnit() override;
62 
64  void run(const edm::EventSetup& c) override;
65 
67  void reset() override;
68 
70  void reset(Extrapolation ext, unsigned int startAdr, unsigned int relAdr);
71 
73  unsigned short int getAddress(Extrapolation ext, unsigned int startAdr, int id) const;
74 
76  unsigned short int getQuality(Extrapolation ext, unsigned int startAdr, int id) const;
77 
79  const std::bitset<12>& getEXTable(Extrapolation ext, unsigned int startAdr) const;
80 
82  const std::bitset<12>& getQSTable(Extrapolation ext, unsigned int startAdr) const;
83 
85  int numberOfExt() const;
86 
88  void print(int level = 0) const;
89 
91  static std::pair<int, int> which_ext(Extrapolation ext);
92 
93 private:
94  const L1MuDTSectorProcessor& m_sp; // reference to Sector Processor
95 
96  mutable SEUmap m_SEUs; // Single Extrapolation Units
97 
99 };
100 
101 #endif
personalPlayback.level
level
Definition: personalPlayback.py:22
ext
Definition: memstream.h:15
L1MuDTExtrapolationUnit::~L1MuDTExtrapolationUnit
~L1MuDTExtrapolationUnit() override
destructor
Definition: L1MuDTExtrapolationUnit.cc:79
ESHandle.h
L1MuDTExtrapolationUnit::pars
edm::ESHandle< L1MuDTTFParameters > pars
Definition: L1MuDTExtrapolationUnit.h:98
L1MuDTExtrapolationUnit::getQSTable
const std::bitset< 12 > & getQSTable(Extrapolation ext, unsigned int startAdr) const
get Quality Sorter table for a given SEU
Definition: L1MuDTExtrapolationUnit.cc:222
L1MuDTExtrapolationUnit::print
void print(int level=0) const
print all successful extrapolations
Definition: L1MuDTExtrapolationUnit.cc:248
L1MuDTExtrapolationUnit::getAddress
unsigned short int getAddress(Extrapolation ext, unsigned int startAdr, int id) const
get extrapolation address from a given ERS
Definition: L1MuDTExtrapolationUnit.cc:167
L1MuDTExtrapolationUnit::L1MuDTExtrapolationUnit
L1MuDTExtrapolationUnit(const L1MuDTSectorProcessor &)
constructor
Definition: L1MuDTExtrapolationUnit.cc:55
Extrapolation
Extrapolation
Definition: L1MuDTExtParam.h:22
L1MuDTExtrapolationUnit::reset
void reset() override
reset Extrapolation Unit
Definition: L1MuDTExtrapolationUnit.cc:144
edm::ESHandle< L1MuDTTFParameters >
L1AbstractProcessor
Definition: L1AbstractProcessor.h:34
L1MuDTExtParam.h
L1MuDTExtrapolationUnit::m_SEUs
SEUmap m_SEUs
Definition: L1MuDTExtrapolationUnit.h:96
L1AbstractProcessor::run
virtual void run()
run processor logic
Definition: L1AbstractProcessor.h:40
edm::EventSetup
Definition: EventSetup.h:57
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
L1AbstractProcessor.h
L1MuDTExtrapolationUnit::SEUmap
std::map< SEUId, L1MuDTSEU *, std::less< SEUId > > SEUmap
Definition: L1MuDTExtrapolationUnit.h:55
L1MuDTExtrapolationUnit::numberOfExt
int numberOfExt() const
return number of successful extrapolations
Definition: L1MuDTExtrapolationUnit.cc:235
L1MuDTSectorProcessor
Definition: L1MuDTSectorProcessor.h:53
L1MuDTExtrapolationUnit::SEUId
std::pair< Extrapolation, unsigned int > SEUId
Definition: L1MuDTExtrapolationUnit.h:54
L1MuDTExtrapolationUnit::which_ext
static std::pair< int, int > which_ext(Extrapolation ext)
return station of start and target track segment for a given extrapolation
Definition: L1MuDTExtrapolationUnit.cc:292
L1MuDTExtrapolationUnit::m_sp
const L1MuDTSectorProcessor & m_sp
Definition: L1MuDTExtrapolationUnit.h:94
L1MuDTExtrapolationUnit::getQuality
unsigned short int getQuality(Extrapolation ext, unsigned int startAdr, int id) const
get extrapolation quality from a given ERS
Definition: L1MuDTExtrapolationUnit.cc:188
L1MuDTSEU
Definition: L1MuDTSEU.h:48
L1MuDTExtrapolationUnit::getEXTable
const std::bitset< 12 > & getEXTable(Extrapolation ext, unsigned int startAdr) const
get Extrapolator table for a given SEU
Definition: L1MuDTExtrapolationUnit.cc:209
L1MuDTTFParameters
Definition: L1MuDTTFParameters.h:36
L1MuDTExtrapolationUnit
Definition: L1MuDTExtrapolationUnit.h:52