|  | ATLAS Offline Software
    | 
 
 
 
Go to the documentation of this file.
    5 #ifndef ACTSGEOMETRY_ACTSLAYERBUILDER_H 
    6 #define ACTSGEOMETRY_ACTSLAYERBUILDER_H 
   16 #include "Acts/Geometry/ILayerBuilder.hpp" 
   17 #include "Acts/Utilities/Logger.hpp" 
   18 #include "Acts/Utilities/BinningType.hpp" 
   19 #include "Acts/Utilities/AxisDefinitions.hpp" 
   20 #include "Acts/Geometry/GeometryContext.hpp" 
   21 #include "Acts/Definitions/Units.hpp" 
   26 class ActsTrackingGeomtrySvc;
 
   29   class SiDetectorManager;
 
   89     std::function<
bool(
const Acts::GeometryContext &, Acts::AxisDirection,
 
   90                        const Acts::Surface *, 
const Acts::Surface *)>
 
  111                        std::unique_ptr<const Acts::Logger> 
logger 
  117   const Acts::LayerVector
 
  120   const Acts::LayerVector
 
  121   centralLayers(
const Acts::GeometryContext& gctx) 
const override;
 
  123   const Acts::LayerVector
 
  168   std::vector<std::shared_ptr<const ActsDetectorElement>>
 
  182   buildBarrel(
const Acts::GeometryContext& gctx, Acts::LayerVector& layersOutput) 
const;
 
  185   buildEndcap(
const Acts::GeometryContext& gctx, Acts::LayerVector& layersOutput, 
int type = 0) 
const;
 
  
void buildEndcap(const Acts::GeometryContext &gctx, Acts::LayerVector &layersOutput, int type=0) const
virtual const std::string & identification() const override
const Acts::Logger & logger() const
Private access to the logger.
const Acts::LayerVector centralLayers(const Acts::GeometryContext &gctx) const override
std::vector< float > passiveBarrelLayerRadii
the specifications for building additional passive cylinders in the barrel region: for each cylinder ...
~ActsLayerBuilder()
Destructor.
Acts::BinningType bTypeR
the binning type of the contained surfaces in r (equidistant/arbitrary)
const Acts::LayerVector negativeLayers(const Acts::GeometryContext &gctx) const override
void buildBarrel(const Acts::GeometryContext &gctx, Acts::LayerVector &layersOutput) const
double numberOfInnermostLayerBinsFactor
Special treatment for the innermost pixel layer to have more control on bin size to account for shall...
const ActsLayerBuilder::Config & getConfiguration() const
get the configuration object
std::array< double, 2 > endcapEnvelopeR
std::vector< std::shared_ptr< const ActsDetectorElement > > getDetectorElements() const
const Acts::LayerVector positiveLayers(const Acts::GeometryContext &gctx) const override
std::vector< float > passiveBarrelLayerThickness
std::array< double, 2 > barrelEnvelopeR
Config m_cfg
configuration object
std::unique_ptr< const Acts::Logger > m_logger
logging instance
std::string configurationName
string based identification
std::array< double, 2 > barrelEnvelopeZ
std::vector< float > passiveBarrelLayerHalflengthZ
bool doEndcapLayerMerging
std::pair< size_t, size_t > barrelMaterialBins
Acts::BinningType bTypeZ
the binning type of the contained surfaces in z (equidistant/arbitrary)
void setConfiguration(const Config &cfg)
Name identification.
Acts::BinningType bTypePhi
the binning type of the contained surfaces in phi (equidistant/arbitrary)
std::ostream & operator<<(std::ostream &os, const ActsLayerBuilder::Mode &mode)
std::array< double, 2 > endcapEnvelopeZ
std::pair< size_t, size_t > endcapMaterialBins
Helper to hold elements for deletion.
std::shared_ptr< const Acts::LayerCreator > layerCreator
std::function< bool(const Acts::GeometryContext &, Acts::AxisDirection, const Acts::Surface *, const Acts::Surface *)> surfaceMatcher
void setLogger(std::unique_ptr< const Acts::Logger > logger)
set logging instance
const InDetDD::SiDetectorManager * mng
double numberOfBinsFactor
controls how many bins are created for the sensitive surface grid.
ActsLayerBuilder(const Config &cfg, std::unique_ptr< const Acts::Logger > logger=Acts::getDefaultLogger("GMLayBldr", Acts::Logging::INFO))
Constructor.
Define macros for attributes used to control the static checker.
Helper to hold elements for deletion.
setBGCode setTAP setLVL2ErrorBits bool
std::shared_ptr< ElementVector > elementStore