ATLAS Offline Software
PixelMaterialMap.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef PixelMaterialMap_H
6 #define PixelMaterialMap_H
7 
8 // Class to interpret and query table PixelMaterialMap
9 
10 #include <string>
11 #include <map>
13 
14 class IGeometryDBSvc;
15 
17 {
18 
19 public:
20  PixelMaterialMap(const IGeometryDBSvc * db, const IRDBRecordset_ptr& mapTable);
21 
22  void addMaterial(int layerdisk, int typenum, const std::string & volumeName, const std::string & materialName);
23  std::string getMaterial(int layerdisk, int typenum, const std::string & volumeName) const;
24 
25 private:
26  class Key
27  {
28  public:
29  Key(int layerdisk_in, int typenum_in, const std::string & volumeName_in);
30  int layerdisk;
31  int typenum;
32  std::string volumeName;
33  bool operator<(const Key &rhs) const;
34  };
35 
36  typedef std::map<Key, std::string> mapType;
38 
39 };
40 
41 #endif // PixelMaterialMap
PixelMaterialMap::addMaterial
void addMaterial(int layerdisk, int typenum, const std::string &volumeName, const std::string &materialName)
Definition: PixelMaterialMap.cxx:63
PixelMaterialMap::mapType
std::map< Key, std::string > mapType
Definition: PixelMaterialMap.h:36
CaloCondBlobAlgs_fillNoiseFromASCII.db
db
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:43
PixelMaterialMap::Key::Key
Key(int layerdisk_in, int typenum_in, const std::string &volumeName_in)
Definition: PixelMaterialMap.cxx:11
PixelMaterialMap::Key
Definition: PixelMaterialMap.h:27
PixelMaterialMap::getMaterial
std::string getMaterial(int layerdisk, int typenum, const std::string &volumeName) const
Definition: PixelMaterialMap.cxx:39
PixelMaterialMap::Key::operator<
bool operator<(const Key &rhs) const
Definition: PixelMaterialMap.cxx:18
IRDBAccessSvc.h
Definition of the abstract IRDBAccessSvc interface.
PixelMaterialMap
Definition: PixelMaterialMap.h:17
PixelMaterialMap::PixelMaterialMap
PixelMaterialMap(const IGeometryDBSvc *db, const IRDBRecordset_ptr &mapTable)
Definition: PixelMaterialMap.cxx:27
IGeometryDBSvc
Definition: IGeometryDBSvc.h:21
IRDBRecordset_ptr
std::shared_ptr< IRDBRecordset > IRDBRecordset_ptr
Definition: IRDBAccessSvc.h:25
PixelMaterialMap::Key::typenum
int typenum
Definition: PixelMaterialMap.h:31
PixelMaterialMap::Key::volumeName
std::string volumeName
Definition: PixelMaterialMap.h:32
PixelMaterialMap::m_matmap
mapType m_matmap
Definition: PixelMaterialMap.h:37
PixelMaterialMap::Key::layerdisk
int layerdisk
Definition: PixelMaterialMap.h:30