29 return StatusCode::SUCCESS;
37 return cylindricalLayersImpl(*siDetElementCollectionPtr);
45 if (!m_pixIdHelper && !m_sctIdHelper){
46 ATH_MSG_ERROR(
"Neither Pixel nor SCT Detector Manager or ID Helper could be retrieved - giving up.");
51 int nDBMLayers = m_siMgr->numerology().numEndcapsDBM();
54 ATH_MSG_DEBUG(
"Found " << m_siMgr->numerology().numEndcapsDBM() <<
" DBM layers active, building first ECs, then DBMS");
55 std::unique_ptr<std::vector<Trk::DiscLayer*> > ecLayers =
createDiscLayers();
57 ATH_MSG_VERBOSE(
"Created " << ecLayers->size() <<
" endcap layers w/o DBM.");
59 ATH_MSG_VERBOSE(
"Created " << ecLayers->size() <<
" endcap layers with DBM.");
66std::unique_ptr<std::vector< Trk::DiscLayer*> >
71 return createDiscLayersImpl(*siDetElementCollectionPtr, std::move(
discLayers));
77std::unique_ptr<std::vector< Trk::DiscLayer*> >
82 return createRingLayersImpl(*siDetElementCollectionPtr);
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
Class to hold the SiDetectorElement objects to be put in the detector store.
virtual StatusCode initialize() override
AlgTool initialize method.
std::unique_ptr< std::vector< Trk::DiscLayer * > > createRingLayers() const
create the disc layers, it is dedicated to ITk implementation of the endcap rings.
virtual std::unique_ptr< const std::vector< Trk::DiscLayer * > > discLayers() const override final
LayerBuilder interface method - returning Endcap-like layers.
std::unique_ptr< std::vector< Trk::DiscLayer * > > createDiscLayers(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...
virtual StatusCode initialize() override
AlgTool initialize method.
virtual std::unique_ptr< const std::vector< Trk::CylinderLayer * > > cylindricalLayers() const override final
LayerBuilder interface method - returning Barrel-like layers.
SiLayerBuilder(const std::string &, const std::string &, const IInterface *)
AlgTool style constructor.