|
ATLAS Offline Software
|
Go to the documentation of this file.
31 ATH_CHECK(m_SCT_ReadKey.initialize(!m_pixelCase));
33 return StatusCode::SUCCESS;
41 if (*readHandle==
nullptr) {
42 ATH_MSG_ERROR(
"Null pointer to the read conditions object of " << m_PixelReadKey.key());
47 if (*readHandle==
nullptr) {
48 ATH_MSG_ERROR(
"Null pointer to the read conditions object of " << m_SCT_ReadKey.key());
55 std::unique_ptr<const std::vector<Trk::CylinderLayer*> >
60 if(*readHandle ==
nullptr){
66 return cylindricalLayersImpl(*readCdo);
71 std::unique_ptr<const std::vector<Trk::DiscLayer*> >
76 if (!m_pixIdHelper && !m_sctIdHelper){
77 ATH_MSG_ERROR(
"Neither Pixel nor SCT Detector Manager or ID Helper could be retrieved - giving up.");
82 int nDBMLayers = m_siMgr->numerology().numEndcapsDBM();
85 ATH_MSG_DEBUG(
"Found " << m_siMgr->numerology().numEndcapsDBM() <<
" DBM layers active, building first ECs, then DBMS");
86 std::unique_ptr<std::vector<Trk::DiscLayer*> > ecLayers =
createDiscLayers(ctx, whandle);
88 ATH_MSG_VERBOSE(
"Created " << ecLayers->size() <<
" endcap layers w/o DBM.");
90 ATH_MSG_VERBOSE(
"Created " << ecLayers->size() <<
" endcap layers with DBM.");
96 std::unique_ptr<std::vector<Trk::DiscLayer*> >
98 const EventContext& ctx,
100 std::unique_ptr<std::vector<Trk::DiscLayer*> > discLayers)
const
105 if(*readHandle ==
nullptr){
111 return createDiscLayersImpl(*readCdo, std::move(
discLayers));
117 std::unique_ptr<std::vector< Trk::DiscLayer*> >
123 if(*readHandle ==
nullptr){
129 return createRingLayersImpl(*readCdo);
virtual StatusCode initialize() override
AlgTool initialize method.
#define ATH_MSG_VERBOSE(x)
virtual std::unique_ptr< const std::vector< Trk::CylinderLayer * > > cylindricalLayers(const EventContext &ctx, SG::WriteCondHandle< Trk::TrackingGeometry > &whandle) const override final
LayerBuilder interface method - returning Barrel-like layers.
::StatusCode StatusCode
StatusCode definition for legacy code.
SG::ReadCondHandle< InDetDD::SiDetectorElementCollection > retrieveSiDetElements(const EventContext &ctx) const
virtual std::unique_ptr< const std::vector< Trk::DiscLayer * > > discLayers(const EventContext &ctx, SG::WriteCondHandle< Trk::TrackingGeometry > &whandle) const override final
LayerBuilder interface method - returning Endcap-like layers.
std::unique_ptr< std::vector< Trk::DiscLayer * > > createRingLayers(const EventContext &ctx, SG::WriteCondHandle< Trk::TrackingGeometry > &whandle) const
create the disc layers, it is dedicated to ITk implementation of the endcap rings.
virtual StatusCode initialize() override
AlgTool initialize method.
SiLayerBuilderCond(const std::string &, const std::string &, const IInterface *)
AlgTool style constructor.
std::unique_ptr< std::vector< Trk::DiscLayer * > > createDiscLayers(const EventContext &ctx, SG::WriteCondHandle< Trk::TrackingGeometry > &whandle, std::unique_ptr< std::vector< Trk::DiscLayer * > > discLayers=nullptr) const
create the disc layers, if no vector is given, then it's the first pass, else it's the DBM for the Pi...
void addDependency(const EventIDRange &range)