ATLAS Offline Software
MdtCsmIdHash.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONDIGITCONATINER_MDTCSMIDHASH_H
6 #define MUONDIGITCONATINER_MDTCSMIDHASH_H
7 
8 
10 #include <map>
11 
17 class MdtCsmIdHash {
18 
19  public:
20 
21  typedef Identifier ID;
22 
23  MdtCsmIdHash ();
24  virtual ~MdtCsmIdHash() { };
25 
26 
28  int operator() (const ID& id) const ;
29 
31  int max() const;
32 
34  ID identifier(int i) const;
35 
37  static int offset() ;
38 
39  private:
41  int m_size; // total number of IDs
42 
45  std::map<Identifier,int> m_lookup;
46 
49  std::vector<ID> m_int2id;
50 
51 };
52 
53 #endif
54 
MdtCsmIdHash::MdtCsmIdHash
MdtCsmIdHash()
Definition: MdtCsmIdHash.cxx:22
ID
std::vector< Identifier > ID
Definition: CalibHitIDCheck.h:24
MdtCsmIdHash::m_size
int m_size
total number of IDs
Definition: MdtCsmIdHash.h:41
MdtCsmIdHash::~MdtCsmIdHash
virtual ~MdtCsmIdHash()
Definition: MdtCsmIdHash.h:24
MdtCsmIdHash::m_int2id
std::vector< ID > m_int2id
reverse lookup
Definition: MdtCsmIdHash.h:49
MdtCsmIdHash::ID
Identifier ID
Definition: MdtCsmIdHash.h:21
MdtCsmIdHash
Hash function for Mdt module Identifier to be used in MdtDigitContainer (IdentifiableContainer)
Definition: MdtCsmIdHash.h:17
lumiFormat.i
int i
Definition: lumiFormat.py:92
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
MdtIdHelper.h
MdtCsmIdHash::max
int max() const
return maximum number of IDs
Definition: MdtCsmIdHash.cxx:93
MdtCsmIdHash::offset
static int offset()
return offset
Definition: MdtCsmIdHash.cxx:99
MdtCsmIdHash::operator()
int operator()(const ID &id) const
Convert ID to int.
Definition: MdtCsmIdHash.cxx:81
MdtCsmIdHash::m_lookup
std::map< Identifier, int > m_lookup
lookup table
Definition: MdtCsmIdHash.h:45
MdtCsmIdHash::identifier
ID identifier(int i) const
reverse conversion
Definition: MdtCsmIdHash.cxx:69