ACTS
Experiment-independent tracking
Loading...
Searching...
No Matches
ActsPlugins::DD4hepDetectorSurfaceFactory Class Reference

A factory to convert DD4hep DetectorElements into sensitive of passive surfaces which are filled into a Cache object, also the create DD4hepDetector elements are provided. More...

#include <ActsPlugins/DD4hep/DD4hepDetectorSurfaceFactory.hpp>

Classes

struct  Cache
 Nested cache that records the conversion status. More...
struct  Config
 Configuration struct. More...
struct  Options
 Nested options struct to steer the conversion. More...

Public Types

using DD4hepPassiveSurface = std::tuple<std::shared_ptr<Acts::Surface>, bool>
 Collect the passive surfaces, bool whether it should be added as an "always try, i.e. assignToAll=true" surface.
using DD4hepSensitiveSurface
 Collect the sensitive surface & detector element.
using ElementFactory
 DD4hepDetectorElement construction factory.

Public Member Functions

 DD4hepDetectorSurfaceFactory (const Config &config, std::unique_ptr< const Acts::Logger > mlogger=Acts::getDefaultLogger("DD4hepDetectorSurfaceFactory", Acts::Logging::INFO))
 The DD4hep detector element factory.
void construct (Cache &cache, const Acts::GeometryContext &gctx, const dd4hep::DetElement &dd4hepElement, const Options &options)
 Construction method of the detector elements.

Detailed Description

A factory to convert DD4hep DetectorElements into sensitive of passive surfaces which are filled into a Cache object, also the create DD4hepDetector elements are provided.

Member Typedef Documentation

◆ DD4hepPassiveSurface

Collect the passive surfaces, bool whether it should be added as an "always try, i.e. assignToAll=true" surface.

◆ DD4hepSensitiveSurface

Initial value:
std::tuple<std::shared_ptr<DD4hepDetectorElement>,
std::shared_ptr<Acts::Surface>>

Collect the sensitive surface & detector element.

◆ ElementFactory

Initial value:
std::function<std::shared_ptr<DD4hepDetectorElement>(
const dd4hep::DetElement&, const std::string&, double, bool,
std::shared_ptr<const Acts::ISurfaceMaterial>)>

DD4hepDetectorElement construction factory.

Constructor & Destructor Documentation

◆ DD4hepDetectorSurfaceFactory()

ActsPlugins::DD4hepDetectorSurfaceFactory::DD4hepDetectorSurfaceFactory ( const Config & config,
std::unique_ptr< const Acts::Logger > mlogger = Acts::getDefaultLogger("DD4hepDetectorSurfaceFactory", Acts::Logging::INFO) )
explicit

The DD4hep detector element factory.

Parameters
configthe configuration struct
mloggera screen output logger

Member Function Documentation

◆ construct()

void ActsPlugins::DD4hepDetectorSurfaceFactory::construct ( Cache & cache,
const Acts::GeometryContext & gctx,
const dd4hep::DetElement & dd4hepElement,
const Options & options )

Construction method of the detector elements.

Parameters
cache[in,out] into which the Elements are filled
gctxthe geometry context
dd4hepElementthe detector element representing the super structure
optionsto steer the conversion
Note
this method will call the recursive construction