Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::ObjectIntersection< object_t, representation_t > Class Template Reference

class extensions to return also the object and a representation More...

#include <acts/blob/sPHENIX/Core/include/Acts/Utilities/Intersection.hpp>

+ Collaboration diagram for Acts::ObjectIntersection< object_t, representation_t >:

Public Member Functions

template<typename T = representation_t, std::enable_if_t< std::is_same< T, object_t >::value, int > = 0>
constexpr ObjectIntersection (const Intersection3D &intersection, const object_t *object, std::uint8_t index=0)
 
constexpr ObjectIntersection (const Intersection3D &intersection, const object_t *object, const representation_t *representation, std::uint8_t index=0)
 
constexpr operator bool () const
 Returns whether the intersection was successful or not.
 
constexpr const Intersection3Dintersection () const
 
constexpr const
Intersection3D::Position
position () const
 
constexpr ActsScalar pathLength () const
 
constexpr Intersection3D::Status status () const
 
constexpr const object_t * object () const
 
constexpr const representation_t * representation () const
 
constexpr std::uint8_t index () const
 

Static Public Member Functions

static constexpr ObjectIntersection invalid ()
 
static constexpr bool forwardOrder (const ObjectIntersection &aIntersection, const ObjectIntersection &bIntersection)
 
static constexpr bool closestOrder (const ObjectIntersection &aIntersection, const ObjectIntersection &bIntersection)
 

Private Member Functions

constexpr ObjectIntersection ()=default
 

Private Attributes

Intersection3D m_intersection = Intersection3D::invalid()
 The intersection itself.
 
const object_t * m_object = nullptr
 The object that was (tried to be) intersected.
 
const representation_t * m_representation = nullptr
 The representation of this object.
 
std::uint8_t m_index = 0
 The intersection index.
 

Detailed Description

template<typename object_t, typename representation_t = object_t>
class Acts::ObjectIntersection< object_t, representation_t >

class extensions to return also the object and a representation

Definition at line 122 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 122 of file Intersection.hpp

Constructor & Destructor Documentation

template<typename object_t, typename representation_t = object_t>
template<typename T = representation_t, std::enable_if_t< std::is_same< T, object_t >::value, int > = 0>
constexpr Acts::ObjectIntersection< object_t, representation_t >::ObjectIntersection ( const Intersection3D intersection,
const object_t *  object,
std::uint8_t  index = 0 
)
inline

Object intersection - symmetric setup

Parameters
intersectionis the intersection
objectis the object to be instersected
indexis the intersection index

Definition at line 131 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 131 of file Intersection.hpp

template<typename object_t, typename representation_t = object_t>
constexpr Acts::ObjectIntersection< object_t, representation_t >::ObjectIntersection ( const Intersection3D intersection,
const object_t *  object,
const representation_t *  representation,
std::uint8_t  index = 0 
)
inline

Object intersection

Parameters
intersectionis the intersection
objectis the object to be instersected
representationis the object representation
indexis the intersection index

Definition at line 144 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 144 of file Intersection.hpp

template<typename object_t, typename representation_t = object_t>
constexpr Acts::ObjectIntersection< object_t, representation_t >::ObjectIntersection ( )
privatedefault

Referenced by Acts::ObjectIntersection< Surface >::invalid().

+ Here is the caller graph for this function:

Member Function Documentation

template<typename object_t, typename representation_t = object_t>
static constexpr bool Acts::ObjectIntersection< object_t, representation_t >::closestOrder ( const ObjectIntersection< object_t, representation_t > &  aIntersection,
const ObjectIntersection< object_t, representation_t > &  bIntersection 
)
inlinestatic

Definition at line 190 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 190 of file Intersection.hpp

template<typename object_t, typename representation_t = object_t>
static constexpr bool Acts::ObjectIntersection< object_t, representation_t >::forwardOrder ( const ObjectIntersection< object_t, representation_t > &  aIntersection,
const ObjectIntersection< object_t, representation_t > &  bIntersection 
)
inlinestatic

Definition at line 184 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 184 of file Intersection.hpp

Referenced by Acts::TrackingVolume::compatibleLayers().

+ Here is the caller graph for this function:

template<typename object_t, typename representation_t = object_t>
constexpr std::uint8_t Acts::ObjectIntersection< object_t, representation_t >::index ( ) const
inline

Definition at line 180 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 180 of file Intersection.hpp

template<typename object_t, typename representation_t = object_t>
constexpr const Intersection3D& Acts::ObjectIntersection< object_t, representation_t >::intersection ( ) const
inline

Definition at line 158 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 158 of file Intersection.hpp

Referenced by Acts::ObjectIntersection< Surface >::closestOrder(), and Acts::ObjectIntersection< Surface >::forwardOrder().

+ Here is the caller graph for this function:

template<typename object_t, typename representation_t = object_t>
static constexpr ObjectIntersection Acts::ObjectIntersection< object_t, representation_t >::invalid ( )
inlinestatic

Definition at line 182 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 182 of file Intersection.hpp

Referenced by Acts::TrackingVolume::compatibleBoundaries(), Acts::Experimental::SurfacesFiller::fill(), and Acts::Experimental::PortalsFiller::fill().

+ Here is the caller graph for this function:

template<typename object_t, typename representation_t = object_t>
constexpr const object_t* Acts::ObjectIntersection< object_t, representation_t >::object ( ) const
inline

Definition at line 174 of file Intersection.hpp.

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

Referenced by Acts::Layer::compatibleSurfaces().

+ Here is the caller graph for this function:

template<typename object_t, typename representation_t = object_t>
constexpr Acts::ObjectIntersection< object_t, representation_t >::operator bool ( ) const
inlineexplicit

Returns whether the intersection was successful or not.

Definition at line 154 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 154 of file Intersection.hpp

template<typename object_t, typename representation_t = object_t>
constexpr ActsScalar Acts::ObjectIntersection< object_t, representation_t >::pathLength ( ) const
inline

Definition at line 166 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 166 of file Intersection.hpp

Referenced by BOOST_AUTO_TEST_CASE(), and Acts::Layer::compatibleSurfaces().

+ Here is the caller graph for this function:

template<typename object_t, typename representation_t = object_t>
constexpr const Intersection3D::Position& Acts::ObjectIntersection< object_t, representation_t >::position ( ) const
inline

Definition at line 162 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 162 of file Intersection.hpp

Referenced by BOOST_AUTO_TEST_CASE(), and Acts::detail::CorrectedFreeToBoundTransformer::operator()().

+ Here is the caller graph for this function:

template<typename object_t, typename representation_t = object_t>
constexpr const representation_t* Acts::ObjectIntersection< object_t, representation_t >::representation ( ) const
inline

Definition at line 176 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 176 of file Intersection.hpp

template<typename object_t, typename representation_t = object_t>
constexpr Intersection3D::Status Acts::ObjectIntersection< object_t, representation_t >::status ( ) const
inline

Definition at line 170 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 170 of file Intersection.hpp

Member Data Documentation

template<typename object_t, typename representation_t = object_t>
std::uint8_t Acts::ObjectIntersection< object_t, representation_t >::m_index = 0
private

The intersection index.

Definition at line 204 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 204 of file Intersection.hpp

Referenced by Acts::ObjectIntersection< Surface >::index().

template<typename object_t, typename representation_t = object_t>
Intersection3D Acts::ObjectIntersection< object_t, representation_t >::m_intersection = Intersection3D::invalid()
private
template<typename object_t, typename representation_t = object_t>
const object_t* Acts::ObjectIntersection< object_t, representation_t >::m_object = nullptr
private

The object that was (tried to be) intersected.

Definition at line 200 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 200 of file Intersection.hpp

Referenced by Acts::ObjectIntersection< Surface >::object().

template<typename object_t, typename representation_t = object_t>
const representation_t* Acts::ObjectIntersection< object_t, representation_t >::m_representation = nullptr
private

The representation of this object.

Definition at line 202 of file Intersection.hpp.

View newest version in sPHENIX GitHub at line 202 of file Intersection.hpp

Referenced by Acts::ObjectIntersection< Surface >::representation().


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