Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::SurfaceArrayCreator Class Reference

#include <acts/blob/sPHENIX/Core/include/Acts/Geometry/SurfaceArrayCreator.hpp>

+ Collaboration diagram for Acts::SurfaceArrayCreator:

Classes

struct  Config
 
struct  ProtoAxis
 

Public Member Functions

 SurfaceArrayCreator (std::unique_ptr< const Logger > logger=getDefaultLogger("SurfaceArrayCreator", Logging::INFO))
 
 SurfaceArrayCreator (const Config &cfg, std::unique_ptr< const Logger > logger=getDefaultLogger("SurfaceArrayCreator", Logging::INFO))
 
virtual ~SurfaceArrayCreator ()=default
 Destructor.
 
std::unique_ptr< SurfaceArraysurfaceArrayOnCylinder (const GeometryContext &gctx, std::vector< std::shared_ptr< const Surface >> surfaces, size_t binsPhi, size_t binsZ, std::optional< ProtoLayer > protoLayerOpt=std::nullopt, const Transform3 &transform=Transform3::Identity()) const
 
std::unique_ptr
< Acts::SurfaceArray
surfaceArrayOnCylinder (const GeometryContext &gctx, std::vector< std::shared_ptr< const Surface >> surfaces, BinningType bTypePhi=equidistant, BinningType bTypeZ=equidistant, std::optional< ProtoLayer > protoLayerOpt=std::nullopt, const Transform3 &transform=Transform3::Identity()) const
 
std::unique_ptr< SurfaceArraysurfaceArrayOnDisc (const GeometryContext &gctx, std::vector< std::shared_ptr< const Surface >> surfaces, size_t binsR, size_t binsPhi, std::optional< ProtoLayer > protoLayerOpt=std::nullopt, const Transform3 &transform=Transform3::Identity()) const
 
std::unique_ptr
< Acts::SurfaceArray
surfaceArrayOnDisc (const GeometryContext &gctx, std::vector< std::shared_ptr< const Surface >> surfaces, BinningType bTypeR, BinningType bTypePhi, std::optional< ProtoLayer > protoLayerOpt=std::nullopt, const Transform3 &transform=Transform3::Identity()) const
 
std::unique_ptr< SurfaceArraysurfaceArrayOnPlane (const GeometryContext &gctx, std::vector< std::shared_ptr< const Surface >> surfaces, size_t bins1, size_t bins2, BinningValue bValue, std::optional< ProtoLayer > protoLayerOpt=std::nullopt, const Transform3 &transform=Transform3::Identity()) const
 SurfaceArrayCreator interface method - create an array on a plane.
 
void setLogger (std::unique_ptr< const Logger > logger)
 

Static Public Member Functions

static bool isSurfaceEquivalent (const GeometryContext &gctx, BinningValue bValue, const Surface *a, const Surface *b)
 

Private Member Functions

const Loggerlogger () const
 Private access to logger.
 
std::vector< const Surface * > findKeySurfaces (const std::vector< const Surface * > &surfaces, const std::function< bool(const Surface *, const Surface *)> &equal) const
 
size_t determineBinCount (const GeometryContext &gctx, const std::vector< const Surface * > &surfaces, BinningValue bValue) const
 
ProtoAxis createVariableAxis (const GeometryContext &gctx, const std::vector< const Surface * > &surfaces, BinningValue bValue, const ProtoLayer &protoLayer, Transform3 &transform) const
 
ProtoAxis createEquidistantAxis (const GeometryContext &gctx, const std::vector< const Surface * > &surfaces, BinningValue bValue, const ProtoLayer &protoLayer, Transform3 &transform, size_t nBins=0) const
 
void completeBinning (const GeometryContext &gctx, SurfaceArray::ISurfaceGridLookup &sl, const std::vector< const Surface * > &surfaces) const
 
std::vector< Acts::Vector3makeGlobalVertices (const GeometryContext &gctx, const Acts::Surface &surface, const std::vector< Acts::Vector2 > &locVertices) const
 

Static Private Member Functions

template<detail::AxisBoundaryType bdtA, detail::AxisBoundaryType bdtB, typename F1 , typename F2 >
static std::unique_ptr
< SurfaceArray::ISurfaceGridLookup
makeSurfaceGridLookup2D (F1 globalToLocal, F2 localToGlobal, ProtoAxis pAxisA, ProtoAxis pAxisB)
 Creates a SurfaceGridLookup instance within an any This is essentially a factory which absorbs some if/else logic that is required by the templating.
 

Private Attributes

Config m_cfg
 configuration object
 
std::unique_ptr< const Loggerm_logger
 logging instance
 

Friends

struct Acts::Test::SurfaceArrayCreatorFixture
 
class Acts::SurfaceArray
 

Detailed Description

It is designed create sub surface arrays to be ordered on Surfaces

Definition at line 54 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 54 of file SurfaceArrayCreator.hpp

Constructor & Destructor Documentation

Acts::SurfaceArrayCreator::SurfaceArrayCreator ( std::unique_ptr< const Logger logger = getDefaultLogger(                          "SurfaceArrayCreator", Logging::INFO))
inline

Constructor with default config

Parameters
loggerlogging instance

Definition at line 96 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 96 of file SurfaceArrayCreator.hpp

Acts::SurfaceArrayCreator::SurfaceArrayCreator ( const Config cfg,
std::unique_ptr< const Logger logger = getDefaultLogger(                          "SurfaceArrayCreator", Logging::INFO) 
)
inline

Constructor with explicit config

Parameters
cfgExplicit config struct
loggerlogging instance

Definition at line 103 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 103 of file SurfaceArrayCreator.hpp

virtual Acts::SurfaceArrayCreator::~SurfaceArrayCreator ( )
virtualdefault

Destructor.

Member Function Documentation

void Acts::SurfaceArrayCreator::completeBinning ( const GeometryContext gctx,
SurfaceArray::ISurfaceGridLookup sl,
const std::vector< const Surface * > &  surfaces 
) const
inlineprivate

Private helper method to complete the binning

given a grid point o

| 0 | 1 | 2 | 3 | 4 |

0 | x | | | | x | 1 | | | o | | | 2 | x | | | | x |

This is being called when you chose to use more bins thans surfaces I.e. to put a finer granularity binning onto your surface Neighbour bins are then filled to contain pointers as well This method delegates to SurfaceGridLookup itself.

Parameters
[in]gctxthe geometry context for this call
slThe SurfaceGridLookup
surfacesthe surfaces

Definition at line 435 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 435 of file SurfaceArrayCreator.hpp

References Acts::ACTS_VERBOSE(), and Acts::SurfaceArray::ISurfaceGridLookup::completeBinning().

Referenced by surfaceArrayOnCylinder().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Acts::SurfaceArrayCreator::ProtoAxis Acts::SurfaceArrayCreator::createEquidistantAxis ( const GeometryContext gctx,
const std::vector< const Surface * > &  surfaces,
BinningValue  bValue,
const ProtoLayer protoLayer,
Transform3 transform,
size_t  nBins = 0 
) const
private

SurfaceArrayCreator internal method Creates a equidistant ProtoAxis when the extremas and the bin number are It loops through the surfaces and finds out the needed information First the surfaces are sorted in the binning direction and the so called "key" surfaces (surfaces with different positions in the binning direction) are extracted. The number of key surfaces euqals the number of bins. Afterwards the minimum and maximum are calculated by subtracting/adding half of a bin size to the center position (in the binning direction) to the first/last surface.

Note
currently implemented for phi, r and z bining
Parameters
[in]gctxthe geometry context for this call
surfacesare the sensitive surfaces to be
bValuethe BinningValue in which direction should be binned (currently possible: binPhi, binR, binZ)
protoLayerInstance of ProtoLayer holding generic layer info
transformis the (optional) additional transform applied
nBinsNumber of bins to use, 0 means determine automatically
Returns
Instance of ProtoAxis containing determined properties
Note
This only creates the ProtoAxis, this needs to be turned into an actual Axis object to be used

Definition at line 552 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 552 of file SurfaceArrayCreator.cpp

References KFPMath::a, Acts::ACTS_VERBOSE(), KFPMath::b, Acts::GeometryObject::binningPosition(), Acts::binPhi, Acts::binR, Acts::SurfaceArrayCreator::ProtoAxis::bType, Acts::SurfaceArrayCreator::ProtoAxis::bValue, Acts::equidistant, gctx, m_cfg(), Acts::SurfaceArrayCreator::ProtoAxis::max, Acts::ProtoLayer::max(), Acts::SurfaceArrayCreator::ProtoAxis::min, Acts::ProtoLayer::min(), Acts::SurfaceArrayCreator::ProtoAxis::nBins, ActsTests::PropagationDatasets::phi, step, and Acts::Test::transform.

Referenced by Acts::Test::SurfaceArrayCreatorFixture::createEquidistantAxis(), and surfaceArrayOnCylinder().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Acts::SurfaceArrayCreator::ProtoAxis Acts::SurfaceArrayCreator::createVariableAxis ( const GeometryContext gctx,
const std::vector< const Surface * > &  surfaces,
BinningValue  bValue,
const ProtoLayer protoLayer,
Transform3 transform 
) const
private

SurfaceArrayCreator internal method Creates a variable ProtoAxis from a vector of (unsorted) surfaces with PlanarBounds It loops through the surfaces and finds out the needed information First the surfaces are sorted in the binning direction and the so called "key" surfaces (surfaces with different positions in the binning direction) are extracted. The boundary value between two surfaces is the mean value of the two center position in the binning direction. The first and the last boundaries are calculated from the vertices of the first and last surface.

Note
currently implemented for phi, r and z bining
Parameters
[in]gctxthe geometry context for this call
surfacesare the sensitive surfaces to be
bValuethe BinningValue in which direction should be binned (currently possible: binPhi, binR, binZ)
protoLayerInstance of ProtoLayer holding generic layer info
transformis the (optional) additional transform applied
Returns
Instance of ProtoAxis containing determined properties
Note
This only creates the ProtoAxis, this needs to be turned into an actual Axis object to be used

Definition at line 412 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 412 of file SurfaceArrayCreator.cpp

References KFPMath::a, ACTS_ERROR, Acts::ACTS_VERBOSE(), Acts::arbitrary, KFPMath::b, Acts::GeometryObject::binningPosition(), Acts::binPhi, Acts::binR, Acts::binZ, Acts::Surface::bounds(), Acts::SurfaceArrayCreator::ProtoAxis::bType, gctx, i, m_cfg(), Acts::ProtoLayer::max(), Acts::Test::maxPhi, Acts::ProtoLayer::min(), Acts::VectorHelpers::perp(), ActsTests::PropagationDatasets::phi, Acts::Experimental::detail::BlueprintHelper::sort(), writeMapConfig::surface, Acts::Test::transform, and Acts::PlanarBounds::vertices().

Referenced by Acts::Test::SurfaceArrayCreatorFixture::createVariableAxis().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

size_t Acts::SurfaceArrayCreator::determineBinCount ( const GeometryContext gctx,
const std::vector< const Surface * > &  surfaces,
BinningValue  bValue 
) const
private

Definition at line 399 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 399 of file SurfaceArrayCreator.cpp

References KFPMath::a, KFPMath::b, gctx, and m_cfg().

+ Here is the call graph for this function:

std::vector< const Acts::Surface * > Acts::SurfaceArrayCreator::findKeySurfaces ( const std::vector< const Surface * > &  surfaces,
const std::function< bool(const Surface *, const Surface *)> &  equal 
) const
private

Definition at line 379 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 379 of file SurfaceArrayCreator.cpp

References Acts::Concepts::exists.

static bool Acts::SurfaceArrayCreator::isSurfaceEquivalent ( const GeometryContext gctx,
BinningValue  bValue,
const Surface a,
const Surface b 
)
inlinestatic

Static check function for surface equivalent

Parameters
[in]gctxthe geometry context for this check
bValuethe binning value for the binning
afirst surface for checking
bsecond surface for checking

Definition at line 238 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 238 of file SurfaceArrayCreator.hpp

References Acts::GeometryObject::binningPosition(), Acts::binPhi, Acts::binR, Acts::binZ, and Acts::VectorHelpers::perp().

+ Here is the call graph for this function:

const Logger& Acts::SurfaceArrayCreator::logger ( ) const
inlineprivate

Private access to logger.

Definition at line 286 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 286 of file SurfaceArrayCreator.hpp

References m_logger.

std::vector< Acts::Vector3 > Acts::SurfaceArrayCreator::makeGlobalVertices ( const GeometryContext gctx,
const Acts::Surface surface,
const std::vector< Acts::Vector2 > &  locVertices 
) const
private

Private helper method to transform the vertices of surface bounds into global coordinates

Parameters
[in]gctxthe geometry context for this call
surfacethe surface associated with the given vertices
locVerticesa vector of the vertices in local coordinates
Returns
a vector of the vertices in global coordinates

Definition at line 655 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 655 of file SurfaceArrayCreator.cpp

References Acts::Surface::localToGlobal().

+ Here is the call graph for this function:

template<detail::AxisBoundaryType bdtA, detail::AxisBoundaryType bdtB, typename F1 , typename F2 >
static std::unique_ptr<SurfaceArray::ISurfaceGridLookup> Acts::SurfaceArrayCreator::makeSurfaceGridLookup2D ( F1  globalToLocal,
F2  localToGlobal,
ProtoAxis  pAxisA,
ProtoAxis  pAxisB 
)
inlinestaticprivate

Creates a SurfaceGridLookup instance within an any This is essentially a factory which absorbs some if/else logic that is required by the templating.

SurfaceArrayCreator internal method

Template Parameters
bdtAAxisBoundaryType of axis A
bdtBAxisBoundaryType of axis B
F1type-deducted value of g2l lambda
F2type-deducted value of l2g lambda
Parameters
globalToLocaltransform callable
localToGlobaltransform callable
pAxisAProtoAxis object for axis A
pAxisBProtoAxis object for axis B

Definition at line 367 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 367 of file SurfaceArrayCreator.hpp

References Acts::arbitrary, Acts::SurfaceArrayCreator::ProtoAxis::binEdges, Acts::SurfaceArrayCreator::ProtoAxis::bType, Acts::SurfaceArrayCreator::ProtoAxis::bValue, Acts::equidistant, std::tr1::make_tuple(), Acts::SurfaceArrayCreator::ProtoAxis::max, Acts::SurfaceArrayCreator::ProtoAxis::min, and Acts::SurfaceArrayCreator::ProtoAxis::nBins.

Referenced by Acts::Test::SurfaceArrayCreatorFixture::makeSurfaceGridLookup2D(), and surfaceArrayOnCylinder().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void Acts::SurfaceArrayCreator::setLogger ( std::unique_ptr< const Logger logger)
inline

Set logging instance

Parameters
loggeris the logging instance to be set

Definition at line 277 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 277 of file SurfaceArrayCreator.hpp

References m_logger, and testing::internal::move().

+ Here is the call graph for this function:

std::unique_ptr< Acts::SurfaceArray > Acts::SurfaceArrayCreator::surfaceArrayOnCylinder ( const GeometryContext gctx,
std::vector< std::shared_ptr< const Surface >>  surfaces,
size_t  binsPhi,
size_t  binsZ,
std::optional< ProtoLayer protoLayerOpt = std::nullopt,
const Transform3 transform = Transform3::Identity() 
) const

SurfaceArrayCreator interface method

  • create an array in a cylinder, binned in phi, z when extremas and bin numbers are known
    Warning
    This function requires the cylinder aligned with the z-axis
    Parameters
    surfacesis the vector of pointers to sensitive surfaces to be ordered on the cylinder
    Precondition
    the pointers to the sensitive surfaces in the surfaces vectors all need to be valid, since no check is performed
    Parameters
    [in]gctxThe gometry context for this building call
    protoLayerOptThe proto layer containing the layer size
    binsPhiis the number of bins in phi for the surfaces
    binsZis the number of bin in Z for the surfaces
    transformis the (optional) additional transform applied
    Returns
    a unique pointer to a new SurfaceArray

Definition at line 30 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 30 of file SurfaceArrayCreator.cpp

References Acts::ACTS_VERBOSE(), Acts::binPhi, Acts::binR, Acts::binZ, completeBinning(), createEquidistantAxis(), loc, makeSurfaceGridLookup2D(), Acts::ProtoLayer::medium(), testing::internal::move(), ActsTests::PropagationDatasets::phi, Acts::Test::pos, Acts::IntegrationTest::R, Acts::Test::transform, and Acts::unpack_shared_vector().

+ Here is the call graph for this function:

std::unique_ptr< Acts::SurfaceArray > Acts::SurfaceArrayCreator::surfaceArrayOnCylinder ( const GeometryContext gctx,
std::vector< std::shared_ptr< const Surface >>  surfaces,
BinningType  bTypePhi = equidistant,
BinningType  bTypeZ = equidistant,
std::optional< ProtoLayer protoLayerOpt = std::nullopt,
const Transform3 transform = Transform3::Identity() 
) const

SurfaceArrayCreator interface method

  • create an array in a cylinder, binned in phi, z when extremas and bin numbers are unknown - this method goes through the surfaces and finds out the needed information
    Warning
    This function requires the cylinder aligned with the z-axis
    Parameters
    surfacesis the vector of pointers to sensitive surfaces to be ordered on the cylinder
    Precondition
    the pointers to the sensitive surfaces in the surfaces vectors all need to be valid, since no check is performed
    Parameters
    [in]gctxThe gometry context for this building call
    protoLayerOptThe proto layer containing the layer size
    bTypePhithe binning type in phi direction (equidistant/arbitrary)
    bTypeZthe binning type in z direction (equidistant/arbitrary)
    transformis the (optional) additional transform applied
    Returns
    a unique pointer a new SurfaceArray

Definition at line 77 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 77 of file SurfaceArrayCreator.cpp

References Acts::ACTS_VERBOSE(), Acts::binPhi, Acts::binR, Acts::binZ, Acts::equidistant, Acts::SurfaceArray::ISurfaceGridLookup::fill(), Acts::SurfaceArray::ISurfaceGridLookup::getAxes(), loc, Acts::ProtoLayer::medium(), testing::internal::move(), ActsTests::PropagationDatasets::phi, Acts::Test::pos, Acts::IntegrationTest::R, Acts::Test::transform, and Acts::unpack_shared_vector().

+ Here is the call graph for this function:

std::unique_ptr< Acts::SurfaceArray > Acts::SurfaceArrayCreator::surfaceArrayOnDisc ( const GeometryContext gctx,
std::vector< std::shared_ptr< const Surface >>  surfaces,
size_t  binsR,
size_t  binsPhi,
std::optional< ProtoLayer protoLayerOpt = std::nullopt,
const Transform3 transform = Transform3::Identity() 
) const

SurfaceArrayCreator interface method

  • create an array on a disc, binned in r, phi when extremas and bin numbers are known
Parameters
surfacesis the vector of pointers to sensitive surfaces to be ordered on the disc
Precondition
the pointers to the sensitive surfaces in the surfaces vectors all need to be valid, since no check is performed
Warning
This function requires the disc aligned with the z-axis
Parameters
[in]gctxThe gometry context for this building call
protoLayerOptThe proto layer containing the layer size
binsPhiis the number of bins in phi for the surfaces
binsRis the number of bin in R for the surfaces
transformis the (optional) additional transform applied
Returns
a unique pointer a new SurfaceArray

Definition at line 143 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 143 of file SurfaceArrayCreator.cpp

References Acts::ACTS_VERBOSE(), Acts::binPhi, Acts::binR, Acts::binZ, Acts::SurfaceArray::ISurfaceGridLookup::fill(), Acts::SurfaceArray::ISurfaceGridLookup::getAxes(), loc, Acts::ProtoLayer::medium(), testing::internal::move(), Acts::VectorHelpers::perp(), ActsTests::PropagationDatasets::phi, Acts::Test::pos, Acts::Test::transform, Acts::unpack_shared_vector(), and SVM_v1::Z.

+ Here is the call graph for this function:

std::unique_ptr< Acts::SurfaceArray > Acts::SurfaceArrayCreator::surfaceArrayOnDisc ( const GeometryContext gctx,
std::vector< std::shared_ptr< const Surface >>  surfaces,
BinningType  bTypeR,
BinningType  bTypePhi,
std::optional< ProtoLayer protoLayerOpt = std::nullopt,
const Transform3 transform = Transform3::Identity() 
) const

SurfaceArrayCreator interface method

  • create an array in a cylinder, binned in phi, r when extremas and bin numbers are unknown - this method goes through the surfaces and finds out the needed information
    Parameters
    surfacesis the vector of pointers to sensitive surfaces to be ordered on the disc
    Precondition
    the pointers to the sensitive surfaces in the surfaces vectors all need to be valid, since no check is performed
    Warning
    This function requires the disc aligned with the z-axis
    Parameters
    [in]gctxThe gometry context for this building call
    protoLayerOptThe proto layer containing the layer size
    bTypeRthe binning type in r direction (equidistant/arbitrary)
    bTypePhithe binning type in phi direction (equidistant/arbitrary)
    transformis the (optional) additional transform applied
    Returns
    a unique pointer a new SurfaceArray
    Note
    If there is more than on R-Ring, number of phi bins will be set to lowest number of surfaces of any R-ring. This ignores bTypePhi and produces equidistant binning in phi

Definition at line 196 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 196 of file SurfaceArrayCreator.cpp

References KFPMath::a, Acts::ACTS_VERBOSE(), KFPMath::b, Acts::binPhi, Acts::binR, Acts::binZ, Acts::equidistant, Acts::SurfaceArray::ISurfaceGridLookup::fill(), gctx, Acts::SurfaceArray::ISurfaceGridLookup::getAxes(), Acts::SurfaceArrayCreator::ProtoAxis::getBin(), loc, m_cfg(), Acts::ProtoLayer::medium(), testing::internal::move(), Acts::SurfaceArrayCreator::ProtoAxis::nBins, Acts::VectorHelpers::perp(), ActsTests::PropagationDatasets::phi, Acts::Test::pos, Acts::Test::transform, Acts::unpack_shared_vector(), and SVM_v1::Z.

+ Here is the call graph for this function:

std::unique_ptr< Acts::SurfaceArray > Acts::SurfaceArrayCreator::surfaceArrayOnPlane ( const GeometryContext gctx,
std::vector< std::shared_ptr< const Surface >>  surfaces,
size_t  bins1,
size_t  bins2,
BinningValue  bValue,
std::optional< ProtoLayer protoLayerOpt = std::nullopt,
const Transform3 transform = Transform3::Identity() 
) const

SurfaceArrayCreator interface method - create an array on a plane.

SurfaceArrayCreator interface method

  • create an array on a plane
Parameters
[in]gctxThe gometry context for this building call
[in]surfacesis the vector of pointers to sensitive surfaces to be ordered on the plane
Precondition
the pointers to the sensitive surfaces in the surfaces vectors all need to be valid, since no check is performed
Warning
This function requires the plane aligned with either the x-, y- or z-axis
Parameters
[in]bins1is the number of bins in the orthogonal direction to bValue
[in]bins2is the number of bins in the orthogonal direction to bValue
[in]bValueDirection of the aligned surfaces
[in]protoLayerOptOptional ProtoLayer instance
[in]transformis the (optional) additional transform applied
Returns
a unique pointer a new SurfaceArray

<

Definition at line 304 of file SurfaceArrayCreator.cpp.

View newest version in sPHENIX GitHub at line 304 of file SurfaceArrayCreator.cpp

References Acts::ACTS_VERBOSE(), Acts::binX, Acts::binY, Acts::binZ, Acts::SurfaceArray::ISurfaceGridLookup::fill(), loc, testing::internal::move(), Acts::Test::pos, Acts::Test::transform, and Acts::unpack_shared_vector().

Referenced by Acts::Test::Layers::BOOST_AUTO_TEST_CASE().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Friends And Related Function Documentation

friend class Acts::SurfaceArray
friend

Definition at line 57 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 57 of file SurfaceArrayCreator.hpp

Definition at line 56 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 56 of file SurfaceArrayCreator.hpp

Member Data Documentation

Config Acts::SurfaceArrayCreator::m_cfg
private

configuration object

Definition at line 283 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 283 of file SurfaceArrayCreator.hpp

std::unique_ptr<const Logger> Acts::SurfaceArrayCreator::m_logger
private

logging instance

Definition at line 416 of file SurfaceArrayCreator.hpp.

View newest version in sPHENIX GitHub at line 416 of file SurfaceArrayCreator.hpp

Referenced by logger(), and setLogger().


The documentation for this class was generated from the following files: