46#include "Identifier/Identifier.h"
52 static const T *
cachedRetrieve(
const T*& cachedPtr,
const char* key,
const bool& configallows );
110 const T *
bad =
static_cast<const T*
>(
static_cast<const void*
>(&
m_badInitFlag));
112 return ( cachedPtr==
bad? 0 : cachedPtr );
113 QString key(preferredKey);
115 VP1Msg::messageDebug(
"VP1DetInfo WARNING: Will not attempt to get (type="+QString(
typeid(T).name())+
", key="+key+
") due to missing/disabled features in job!");
123 VP1Msg::messageDebug(
"VP1DetInfo WARNING: Could not find (type="+QString(
typeid(T).name())+
") in detector store (expected key="+key+
")");
127 if (keys.count()>1) {
128 VP1Msg::messageDebug(
"VP1DetInfo WARNING: Could not find (type="+QString(
typeid(T).name())+
", key="+key+
") in detector store, and could not uniquely guess at alternate key.");
132 VP1Msg::messageDebug(
"VP1DetInfo WARNING: Could not find (type="+QString(
typeid(T).name())+
", key="+key+
") in detector store. Trying with key="+keys.first()+
")");
136 VP1Msg::messageDebug(
"VP1DetInfo WARNING: Could not retrieve (type="+QString(
typeid(T).name())+
", key="+key+
") from detector store!");
140 VP1Msg::messageVerbose(
"VP1DetInfo Succesfully retrieved (type="+QString(
typeid(T).name())+
", key="+key+
") from detector store!");
172 if ( !idhelper || !
id.is_valid() )
182 }
else if (idhelper->
is_muon(
id)) {
185 }
else if (idhelper->
is_calo(
id)) {
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
This is an Identifier helper class for the Pixel subdetector.
This is an Identifier helper class for the SCT subdetector.
This is an Identifier helper class for the TRT subdetector.
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
bool is_indet(Identifier id) const
bool is_lar(Identifier id) const
bool is_sct(Identifier id) const
bool is_pixel(Identifier id) const
bool is_muon(Identifier id) const
bool is_calo(Identifier id) const
bool is_tile(Identifier id) const
bool is_trt(Identifier id) const
This class initializes the Calo (LAr and Tile) offline identifiers.
A manager class providing access to readout geometry information for the electromagnetic barrel calor...
A manager class providing access to readout geometry information for the electromagnetic endcap calor...
A manager class providing access to readout geometry information for the forward calorimeter.
A manager class providing access to readout geometry information for the hadronic endcap calorimeter.
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated pixel ...
Dedicated detector manager extending the functionality of the SiDetectorManager with dedicated SCT in...
The Detector Manager for all TRT Detector elements, it acts as the interface to the detector elements...
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
This is an Identifier helper class for the Pixel subdetector.
This is an Identifier helper class for the SCT subdetector.
This is an Identifier helper class for the TRT subdetector.
static StoreGateSvc * detectorStore()
static const TgcIdHelper * m_tgcIDHelper
static const sTgcIdHelper * m_stgcIDHelper
static const CaloIdManager * m_caloIdMgr
static const InDetDD::SCT_DetectorManager * m_sctDetMgr
static const EMECDetectorManager * m_emecDetMgr
static bool m_initialised
static const PixelID * m_pixelIDHelper
static const HECDetectorManager * m_hecDetMgr
static const FCALDetectorManager * m_fcalDetMgr
static const InDetDD::TRT_DetectorManager * m_trtDetMgr
static const char m_badInitFlag
static const CscIdHelper * m_cscIDHelper
static const MdtIdHelper * m_mdtIDHelper
static const MmIdHelper * m_mmIDHelper
static const SCT_ID * m_sctIDHelper
static const T * cachedRetrieve(const T *&cachedPtr, const char *key, const bool &configallows)
static const EMBDetectorManager * m_embDetMgr
static const LArDetectorManager * m_larDetMgr
static const AtlasDetectorID * m_atlasIDHelper
static const MuonGM::MuonDetectorManager * m_muonDetMgr
static const TileDetDescrManager * m_tileDetMgr
static const RpcIdHelper * m_rpcIDHelper
static const TRT_ID * m_trtIDHelper
static const InDetDD::PixelDetectorManager * m_pixelDetMgr
static bool isUnsafe(const Identifier &)
static const InDetDD::SCT_DetectorManager * sctDetMgr()
static const CaloIdManager * caloIDMgr()
static const InDetDD::PixelDetectorManager * pixelDetMgr()
static const FCALDetectorManager * fcalDetMgr()
static const RpcIdHelper * rpcIDHelper()
static const EMECDetectorManager * emecDetMgr()
static const TgcIdHelper * tgcIDHelper()
static const TileDetDescrManager * tileDetMgr()
static const TRT_ID * trtIDHelper()
static const MdtIdHelper * mdtIDHelper()
static const EMBDetectorManager * embDetMgr()
static const HECDetectorManager * hecDetMgr()
static const sTgcIdHelper * stgcIDHelper()
static const AtlasDetectorID * atlasIDHelper()
static const PixelID * pixelIDHelper()
static const MuonGM::MuonDetectorManager * muonDetMgr()
static const InDetDD::TRT_DetectorManager * trtDetMgr()
static const SCT_ID * sctIDHelper()
static const MmIdHelper * mmIDHelper()
static const LArDetectorManager * larDetMgr()
static const CscIdHelper * cscIDHelper()
static bool hasTileGeometry()
static bool hasTRTGeometry()
static bool hasMuonNSWGeometry()
static bool hasLArGeometry()
static bool hasPixelGeometry()
static bool hasSCTGeometry()
static bool hasMuonGeometry()
static void messageVerbose(const QString &)
static void messageDebug(const QString &)
QStringList getKeys() const
bool contains(const std::string &s, const std::string ®x)
does a string contain the substring