ATLAS Offline Software
DetDescrCnvSvc.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef DETDESCRCNVSVC_DETDESCRCNVSVC_H
6 #define DETDESCRCNVSVC_DETDESCRCNVSVC_H
7 
8 #include "GaudiKernel/ConversionSvc.h"
9 
10 // Forward declarations
11 class IOpaqueAddress;
12 class StoreGateSvc;
13 
14 class DetDescrCnvSvc : public ConversionSvc {
15 
16  public:
18  virtual StatusCode initialize();
19 
21  virtual StatusCode addToDetStore(const CLID &clid,
22  const std::string &name) const;
23 
25  virtual StatusCode createAddress(long svc_type, const CLID &clid,
26  const std::string *par,
27  const unsigned long *ip,
28  IOpaqueAddress *&refpAddress);
29 
31  virtual StatusCode createAddress(long svc_type, const CLID &clid,
32  const std::string &refAddress,
33  IOpaqueAddress *&refpAddress);
34 
36  virtual StatusCode convertAddress(const IOpaqueAddress *pAddress,
37  std::string &refAddress);
38 
41  DetDescrCnvSvc(const std::string &name, ISvcLocator *svc);
43 
45  virtual ~DetDescrCnvSvc();
46 
47  private:
49 
50  void initTDSItems();
51 
53  StringArrayProperty m_detMgrs{this, "DetectorManagers", {}};
54  StringArrayProperty m_detNodes{this, "DetectorNodes", {}};
55  BooleanProperty m_decodeIdDict{this, "DecodeIdDict", true};
56  BooleanProperty m_idDictFromRDB{this, "IdDictFromRDB", false};
57  StringProperty m_idDictName{this, "IdDictName", ""};
58  StringProperty m_idDictGlobalTag{this, "IdDictGlobalTag", ""};
59  StringProperty m_idDictATLASName{this, "AtlasIDFileName", ""};
60  StringProperty m_idDictInDetName{this, "InDetIDFileName", ""};
61  StringProperty m_idDictLArName{this, "LArIDFileName", ""};
62  StringProperty m_idDictTileName{this, "TileIDFileName", ""};
63  StringProperty m_idDictLVL1Name{this, "CaloIDFileName", ""};
64  StringProperty m_idDictMuonName{this, "MuonIDFileName", ""};
65  StringProperty m_idDictLArHighVoltageName{this, "HighVoltageIDFileName",
66  ""};
67  StringProperty m_idDictLArElectrodeName{this, "LArElectrodeIDFileName", ""};
68  StringProperty m_idDictForwardName{this, "ForwardIDFileName", ""};
69  StringProperty m_fcal2dNeighborsName{this, "FCAL2DNeighborsFileName", ""};
70  StringProperty m_fcal3dNeighborsNextName{this,
71  "FCAL3DNeighborsNextFileName", ""};
72  StringProperty m_fcal3dNeighborsPrevName{this,
73  "FCAL3DNeighborsPrevFileName", ""};
74  StringProperty m_tileNeighborsName{this, "TileNeighborsFileName", ""};
75  StringProperty m_fullAtlasNeighborsName{this, "FullAtlasNeighborsFileName",
76  ""};
77 
78  BooleanProperty m_fromRoot{this, "ReadFromROOT", false};
79  BooleanProperty m_fromNova{this, "ReadFromNova", false};
80  BooleanProperty m_detElemsfromDetNodes{this, "InitDetElemsFromGeoModel",
81  false};
82  BooleanProperty m_compact_ids_only{this, "CompactIDsOnly", false};
83  BooleanProperty m_do_checks{this, "DoIdChecks", false};
84  BooleanProperty m_do_neighbours{this, "DoInitNeighbours", true};
85 
87 
88  BooleanProperty m_hasCSC{this, "HasCSC", false};
89  BooleanProperty m_hasSTGC{this, "HasSTgc", false};
90  BooleanProperty m_hasMM{this, "HasMM", false};
91  BooleanProperty m_hasMDT{this, "HasMDT", true};
92  BooleanProperty m_hasRPC{this, "HasRPC", true};
93  BooleanProperty m_hasTGC{this, "HasTGC", true};
94 
95  BooleanProperty m_useGeomDB_InDet{this, "useGeomDB_InDet", false};
96 
97  inline MsgStream &msg(MSG::Level lvl) const { return msgStream(lvl); }
98 };
99 #endif
DetDescrCnvSvc::m_detStore
ServiceHandle< StoreGateSvc > m_detStore
Definition: DetDescrCnvSvc.h:52
DetDescrCnvSvc::m_fromNova
BooleanProperty m_fromNova
Definition: DetDescrCnvSvc.h:79
DetDescrCnvSvc::m_idDictName
StringProperty m_idDictName
Definition: DetDescrCnvSvc.h:57
DetDescrCnvSvc::m_decodeIdDict
BooleanProperty m_decodeIdDict
Definition: DetDescrCnvSvc.h:55
DetDescrCnvSvc::m_detNodes
StringArrayProperty m_detNodes
Definition: DetDescrCnvSvc.h:54
DetDescrCnvSvc
Definition: DetDescrCnvSvc.h:14
DetDescrCnvSvc::m_idDictForwardName
StringProperty m_idDictForwardName
Definition: DetDescrCnvSvc.h:68
DetDescrCnvSvc::m_hasMDT
BooleanProperty m_hasMDT
Definition: DetDescrCnvSvc.h:91
DetDescrCnvSvc::m_idDictMuonName
StringProperty m_idDictMuonName
Definition: DetDescrCnvSvc.h:64
DetDescrCnvSvc::m_idDictLVL1Name
StringProperty m_idDictLVL1Name
Definition: DetDescrCnvSvc.h:63
DetDescrCnvSvc::m_idDictLArHighVoltageName
StringProperty m_idDictLArHighVoltageName
Definition: DetDescrCnvSvc.h:65
DetDescrCnvSvc::initialize
virtual StatusCode initialize()
Initialize the service.
Definition: DetDescrCnvSvc.cxx:38
DetDescrCnvSvc::m_do_checks
BooleanProperty m_do_checks
Definition: DetDescrCnvSvc.h:83
DetDescrCnvSvc::m_idDictTileName
StringProperty m_idDictTileName
Definition: DetDescrCnvSvc.h:62
DetDescrCnvSvc::m_fcal3dNeighborsNextName
StringProperty m_fcal3dNeighborsNextName
Definition: DetDescrCnvSvc.h:70
DetDescrCnvSvc::m_hasSTGC
BooleanProperty m_hasSTGC
Definition: DetDescrCnvSvc.h:89
DetDescrCnvSvc::convertAddress
virtual StatusCode convertAddress(const IOpaqueAddress *pAddress, std::string &refAddress)
Convert address to string form.
Definition: DetDescrCnvSvc.cxx:149
DetDescrCnvSvc::m_idDictLArElectrodeName
StringProperty m_idDictLArElectrodeName
Definition: DetDescrCnvSvc.h:67
DetDescrCnvSvc::m_hasCSC
BooleanProperty m_hasCSC
Switch on/off the muon detectors.
Definition: DetDescrCnvSvc.h:88
DetDescrCnvSvc::m_hasMM
BooleanProperty m_hasMM
Definition: DetDescrCnvSvc.h:90
StoreGateSvc
The Athena Transient Store API.
Definition: StoreGateSvc.h:125
DetDescrCnvSvc::m_idDictLArName
StringProperty m_idDictLArName
Definition: DetDescrCnvSvc.h:61
TrigConf::MSGTC::Level
Level
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStream.h:21
DetDescrCnvSvc::m_detElemsfromDetNodes
BooleanProperty m_detElemsfromDetNodes
Definition: DetDescrCnvSvc.h:80
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
DetDescrCnvSvc::m_fromRoot
BooleanProperty m_fromRoot
Definition: DetDescrCnvSvc.h:78
DetDescrCnvSvc::m_fcal2dNeighborsName
StringProperty m_fcal2dNeighborsName
Definition: DetDescrCnvSvc.h:69
find_tgc_unfilled_channelids.ip
ip
Definition: find_tgc_unfilled_channelids.py:3
Handler::svc
AthROOTErrorHandlerSvc * svc
Definition: AthROOTErrorHandlerSvc.cxx:10
DetDescrCnvSvc::~DetDescrCnvSvc
virtual ~DetDescrCnvSvc()
Standard Destructor.
CLID
uint32_t CLID
The Class ID type.
Definition: Event/xAOD/xAODCore/xAODCore/ClassID_traits.h:47
DetDescrCnvSvc::m_idDictInDetName
StringProperty m_idDictInDetName
Definition: DetDescrCnvSvc.h:60
DetDescrCnvSvc::m_compact_ids_only
BooleanProperty m_compact_ids_only
Definition: DetDescrCnvSvc.h:82
DetDescrCnvSvc::m_idDictATLASName
StringProperty m_idDictATLASName
Definition: DetDescrCnvSvc.h:59
DetDescrCnvSvc::m_useGeomDB_InDet
BooleanProperty m_useGeomDB_InDet
Definition: DetDescrCnvSvc.h:95
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
createCoolChannelIdFile.par
par
Definition: createCoolChannelIdFile.py:29
DetDescrCnvSvc::m_idDictFromRDB
BooleanProperty m_idDictFromRDB
Definition: DetDescrCnvSvc.h:56
DetDescrCnvSvc::msg
MsgStream & msg(MSG::Level lvl) const
Definition: DetDescrCnvSvc.h:97
DetDescrCnvSvc::initTDSItems
void initTDSItems()
DetDescrCnvSvc::createAddress
virtual StatusCode createAddress(long svc_type, const CLID &clid, const std::string *par, const unsigned long *ip, IOpaqueAddress *&refpAddress)
Basic create address.
Definition: DetDescrCnvSvc.cxx:112
DetDescrCnvSvc::DetDescrCnvSvc
DetDescrCnvSvc(const std::string &name, ISvcLocator *svc)
Standard Constructor.
Definition: DetDescrCnvSvc.cxx:25
DetDescrCnvSvc::m_fullAtlasNeighborsName
StringProperty m_fullAtlasNeighborsName
Definition: DetDescrCnvSvc.h:75
DetDescrCnvSvc::m_do_neighbours
BooleanProperty m_do_neighbours
Definition: DetDescrCnvSvc.h:84
DetDescrCnvSvc::addToDetStore
virtual StatusCode addToDetStore(const CLID &clid, const std::string &name) const
Add new address to the Detector Store.
Definition: DetDescrCnvSvc.cxx:160
DetDescrCnvSvc::m_tileNeighborsName
StringProperty m_tileNeighborsName
Definition: DetDescrCnvSvc.h:74
DetDescrCnvSvc::m_detMgrs
StringArrayProperty m_detMgrs
Definition: DetDescrCnvSvc.h:53
DetDescrCnvSvc::fillTDSRefs
StatusCode fillTDSRefs()
DetDescrCnvSvc::m_fcal3dNeighborsPrevName
StringProperty m_fcal3dNeighborsPrevName
Definition: DetDescrCnvSvc.h:72
DetDescrCnvSvc::m_hasRPC
BooleanProperty m_hasRPC
Definition: DetDescrCnvSvc.h:92
DetDescrCnvSvc::m_idDictGlobalTag
StringProperty m_idDictGlobalTag
Definition: DetDescrCnvSvc.h:58
ServiceHandle< StoreGateSvc >
DetDescrCnvSvc::m_hasTGC
BooleanProperty m_hasTGC
Definition: DetDescrCnvSvc.h:93