CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
SiteLut.h
Go to the documentation of this file.
1 
2 #ifndef L1Trigger_L1TMuonEndCapPhase2_SiteLut_h
3 #define L1Trigger_L1TMuonEndCapPhase2_SiteLut_h
4 
5 #include <map>
6 #include <tuple>
7 
10 
11 namespace emtf::phase2::data {
12 
13  class SiteLut {
14  // Static
15  public:
16  static const int kInvalid;
17 
18  // Member
19  public:
20  SiteLut();
21 
22  ~SiteLut();
23 
24  void update(const edm::Event&, const edm::EventSetup&);
25 
26  const int& lookup(const std::tuple<int, int, int>&) const;
27 
28  private:
29  // Key: Subsystem, Station, Ring
30  // Value: Site
31  std::map<std::tuple<int, int, int>, int> lut_;
32  };
33 
34 } // namespace emtf::phase2::data
35 
36 #endif // L1Trigger_L1TMuonEndCapPhase2_SiteLut_h
static const int kInvalid
Definition: SiteLut.h:16
void update(const edm::Event &, const edm::EventSetup &)
Definition: SiteLut.cc:41
const int & lookup(const std::tuple< int, int, int > &) const
Definition: SiteLut.cc:45
std::map< std::tuple< int, int, int >, int > lut_
Definition: SiteLut.h:31