File ISurfacesProvider.hpp

namespace Acts


This file is foreseen for the Geometry module to replace Extent

namespace Experimental
class ISurfacesProvider
#include <Acts/Detector/interface/ISurfacesProvider.hpp>

This is the interface for providing surfaces to the detector building process.

These surfaces manly describe the sensitive detector surfaces, but also passive (i.e. material carrying) surfaces are considered.

These could be prefilled, or created on demand when the detector is built (to increase memory locality)

Subclassed by Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >, Acts::Experimental::LayerStructureBuilder::SurfacesHolder

Public Functions

virtual ~ISurfacesProvider() = default
virtual std::vector<std::shared_ptr<Surface>> surfaces(const GeometryContext &gctx) const = 0

The virtual interface definition for detector surface providers.


gctx – the geometry context at the creation of the internal structure


a shared detector object