Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator > Class Template Reference

Callable struct wrapper around the KDT surface structure. More...

#include <acts/blob/sPHENIX/Core/include/Acts/Detector/KdtSurfacesProvider.hpp>

+ Inheritance diagram for Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >:
+ Collaboration diagram for Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >:

Public Member Functions

 KdtSurfacesProvider (std::shared_ptr< KdtSurfaces< kDIM, bSize, reference_generator >> kdts, const Extent &kregion)
 
std::vector< std::shared_ptr
< Surface > > 
surfaces ([[maybe_unused]] const GeometryContext &gctx) const final
 The call to provide the surfaces.
 
- Public Member Functions inherited from Acts::Experimental::ISurfacesProvider
virtual ~ISurfacesProvider ()=default
 
virtual std::vector
< std::shared_ptr< Surface > > 
surfaces (const GeometryContext &gctx) const =0
 

Private Attributes

std::shared_ptr< KdtSurfaces
< kDIM, bSize,
reference_generator > > 
m_kdt
 
Extent m_region
 The query region.
 

Detailed Description

template<size_t kDIM = 2u, size_t bSize = 100u, typename reference_generator = detail::PolyhedronReferenceGenerator<1u, false>>
class Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >

Callable struct wrapper around the KDT surface structure.

This allows to create small region based callable structs at configuration level that are then connected to an InternalStructureBuilder

Definition at line 167 of file KdtSurfacesProvider.hpp.

View newest version in sPHENIX GitHub at line 167 of file KdtSurfacesProvider.hpp

Constructor & Destructor Documentation

template<size_t kDIM = 2u, size_t bSize = 100u, typename reference_generator = detail::PolyhedronReferenceGenerator<1u, false>>
Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >::KdtSurfacesProvider ( std::shared_ptr< KdtSurfaces< kDIM, bSize, reference_generator >>  kdts,
const Extent kregion 
)
inline

The prefilled surfaces in a KD tree structure, it is generally shared amongst different providers

Parameters
kdtsthe prefilled KDTree structure
kregionthe region where these are pulled from

Sanity check that the KDTree is not empty

Definition at line 174 of file KdtSurfacesProvider.hpp.

View newest version in sPHENIX GitHub at line 174 of file KdtSurfacesProvider.hpp

References Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >::m_kdt.

Member Function Documentation

template<size_t kDIM = 2u, size_t bSize = 100u, typename reference_generator = detail::PolyhedronReferenceGenerator<1u, false>>
std::vector<std::shared_ptr<Surface> > Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >::surfaces ( [[maybe_unused] ] const GeometryContext gctx) const
inlinefinal

The call to provide the surfaces.

Definition at line 186 of file KdtSurfacesProvider.hpp.

View newest version in sPHENIX GitHub at line 186 of file KdtSurfacesProvider.hpp

References Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >::m_kdt, and Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >::m_region.

Referenced by BOOST_AUTO_TEST_CASE().

+ Here is the caller graph for this function:

Member Data Documentation

template<size_t kDIM = 2u, size_t bSize = 100u, typename reference_generator = detail::PolyhedronReferenceGenerator<1u, false>>
std::shared_ptr<KdtSurfaces<kDIM, bSize, reference_generator> > Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >::m_kdt
private
template<size_t kDIM = 2u, size_t bSize = 100u, typename reference_generator = detail::PolyhedronReferenceGenerator<1u, false>>
Extent Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >::m_region
private

The query region.

Definition at line 195 of file KdtSurfacesProvider.hpp.

View newest version in sPHENIX GitHub at line 195 of file KdtSurfacesProvider.hpp

Referenced by Acts::Experimental::KdtSurfacesProvider< kDIM, bSize, reference_generator >::surfaces().


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