EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM > Class Template Reference

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

+ Collaboration diagram for Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >:

Classes

class  NamedType
 
struct  SizeParameter
 

Public Types

using value_type = value_t
 
using VertexType = ActsVector< value_t, DIM >
 
using vertex_array_type = Eigen::Array< value_t, DIM, 1 >
 
using entity_type = entity_t
 
using transform_type = Eigen::Transform< value_type, DIM, Eigen::Affine >
 
using Size = NamedType< VertexType, struct SizeParameter >
 

Public Member Functions

 AxisAlignedBoundingBox (const self_t &other)=default
 
 AxisAlignedBoundingBox (const entity_t *entity, const VertexType &vmin, const VertexType &vmax)
 
 AxisAlignedBoundingBox (const entity_t *entity, const VertexType &center, const Size &size)
 
 AxisAlignedBoundingBox (const std::vector< self_t * > &boxes, vertex_array_type envelope=vertex_array_type::Zero())
 
bool intersect (const VertexType &point) const
 
bool intersect (const Ray< value_type, DIM > &ray) const
 Implements the slab method for Ray/AABB intersections.
 
template<size_t sides>
bool intersect (const Frustum< value_type, DIM, sides > &fr) const
 
void setSkip (self_t *skip)
 
const self_tgetSkip () const
 
const self_tgetLeftChild () const
 
bool hasEntity () const
 
const entity_t * entity () const
 
void setEntity (const entity_t *entity)
 
const VertexTypecenter () const
 
const VertexTypemin () const
 
const VertexTypemax () const
 
std::ostream & toStream (std::ostream &os) const
 
void transform (const transform_type &trf)
 
self_t transformed (const transform_type &trf) const
 
template<size_t D = DIM, std::enable_if_t< D==3, int > = 0>
void draw (IVisualization3D &helper, std::array< int, 3 > color={120, 120, 120}, const transform_type &trf=transform_type::Identity()) const
 
template<size_t D = DIM, std::enable_if_t< D==2, int > = 0>
std::ostream & svg (std::ostream &os, value_type w, value_type h, value_type unit=10, std::string label="", std::string fillcolor="grey") const
 

Static Public Member Functions

static std::pair< VertexType,
VertexType
wrap (const std::vector< const self_t * > &boxes, vertex_array_type envelope=vertex_array_type::Zero())
 
static std::pair< VertexType,
VertexType
wrap (const std::vector< self_t * > &boxes, vertex_array_type envelope=vertex_array_type::Zero())
 
static std::pair< VertexType,
VertexType
wrap (const std::vector< self_t > &boxes, vertex_array_type envelope=vertex_array_type::Zero())
 

Static Public Attributes

static const size_t dim = DIM
 

Private Types

using self_t = AxisAlignedBoundingBox< entity_t, value_t, DIM >
 

Private Member Functions

template<size_t D = DIM, std::enable_if_t< D==2, int > = 0>
std::pair< VertexType, VertexTypetransformVertices (const transform_type &trf) const
 
template<size_t D = DIM, std::enable_if_t< D==3, int > = 0>
std::pair< VertexType, VertexTypetransformVertices (const transform_type &trf) const
 

Private Attributes

const entity_t * m_entity
 
VertexType m_vmin
 
VertexType m_vmax
 
VertexType m_center
 
vertex_array_type m_width
 
vertex_array_type m_iwidth
 
self_tm_left_child {nullptr}
 
self_tm_right_child {nullptr}
 
self_tm_skip {nullptr}
 

Detailed Description

template<typename entity_t, typename value_t, size_t DIM>
class Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >

Implementation of an Axis Aligned Bounding Box. This type is compatible with 2D and 3D boxes

Definition at line 32 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 32 of file BoundingBox.hpp

Member Typedef Documentation

template<typename entity_t, typename value_t, size_t DIM>
using Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::entity_type = entity_t

Type of stored entity

Definition at line 80 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 80 of file BoundingBox.hpp

template<typename entity_t, typename value_t, size_t DIM>
using Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::self_t = AxisAlignedBoundingBox<entity_t, value_t, DIM>
private

Private self type to capture template parameters

Definition at line 37 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 37 of file BoundingBox.hpp

template<typename entity_t, typename value_t, size_t DIM>
using Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::Size = NamedType<VertexType, struct SizeParameter>

Strong type to select the correct constructor

Definition at line 90 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 90 of file BoundingBox.hpp

template<typename entity_t, typename value_t, size_t DIM>
using Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::transform_type = Eigen::Transform<value_type, DIM, Eigen::Affine>

The transform type based on the value_type

Definition at line 85 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 85 of file BoundingBox.hpp

template<typename entity_t, typename value_t, size_t DIM>
using Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::value_type = value_t

The value type used by this class

Definition at line 65 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 65 of file BoundingBox.hpp

template<typename entity_t, typename value_t, size_t DIM>
using Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::vertex_array_type = Eigen::Array<value_t, DIM, 1>

Associated array value to VertexType

Definition at line 75 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 75 of file BoundingBox.hpp

template<typename entity_t, typename value_t, size_t DIM>
using Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType = ActsVector<value_t, DIM>

Re-export vertex type based on value type given

Definition at line 70 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 70 of file BoundingBox.hpp

Constructor & Destructor Documentation

template<typename entity_t, typename value_t, size_t DIM>
Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox ( const self_t other)
default

Copy constructor from other bounding box.

Parameters
otherThe other AABB
template<typename entity_t, typename value_t , size_t DIM>
Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox ( const entity_t *  entity,
const VertexType vmin,
const VertexType vmax 
)

Constructor from an entity pointer, and the min and max vertices.

Parameters
entityThe entity to store
vminThe minimum vertex.
vmaxThe maximum vertex.

Definition at line 10 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 10 of file BoundingBox.ipp

template<typename entity_t, typename value_t , size_t DIM>
Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox ( const entity_t *  entity,
const VertexType center,
const Size size 
)

Constructor from a center position, and a width and height.

Parameters
entityThe entity to store
centerThe center position
sizeThe size (width and height) of the box.
Note
The special type size is required to disambiguate this constructor from the other one above. It is a wrapper around a simple Vector3D.

Definition at line 20 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 20 of file BoundingBox.ipp

template<typename entity_t, typename value_t , size_t DIM>
Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox ( const std::vector< self_t * > &  boxes,
vertex_array_type  envelope = vertex_array_type::Zero() 
)

Constructor from a list of child boxes. This box will wrap around all boxes contained in boxes, and additional envelope can be given.

Parameters
boxesVector of child boxes to store in this bounding box.
envelopeEnvelope that will be added/subtracted to the dimension.

Definition at line 30 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 30 of file BoundingBox.ipp

References Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_center, Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_iwidth, Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_left_child, Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_right_child, Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_skip, Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_vmax, Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_vmin, Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_width, and Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::wrap().

+ Here is the call graph for this function:

Member Function Documentation

template<typename entity_t , typename value_t , size_t DIM>
const Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType & Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::center ( ) const

Get the center position of this bounding box.

Returns
The center position

Definition at line 227 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 227 of file BoundingBox.ipp

References m_center().

+ Here is the call graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
template<size_t D, std::enable_if_t< D==3, int > >
void Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::draw ( IVisualization3D helper,
std::array< int, 3 >  color = {120, 120, 120},
const transform_type trf = transform_type::Identity() 
) const

Draw this bounding box using the given visualization helper. This method is only available for the 3D case.

Template Parameters
D(used for SFINAE)
Parameters
helperThe visualization helper to write to
colorThe color to use for drawing
trfAn optional transform to apply first.

Definition at line 354 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 354 of file BoundingBox.ipp

References c, d, DIM, Acts::IVisualization3D::face(), and tree::write().

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

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
const entity_t * Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::entity ( ) const

Return the entity associated with this box. This might be nullptr if there is no entity attached.

Returns
The entity pointer, might be nullptr

Definition at line 214 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 214 of file BoundingBox.ipp

template<typename entity_t , typename value_t , size_t DIM>
const Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM > * Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::getLeftChild ( ) const

Get the left child (i.e. the first of the children that are inside this bounding box).

Returns
The lest most child.

Definition at line 198 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 198 of file BoundingBox.ipp

template<typename entity_t , typename value_t , size_t DIM>
const Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM > * Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::getSkip ( ) const

Get the skip node for this box

Returns
The skip node pointer

Definition at line 204 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 204 of file BoundingBox.ipp

template<typename entity_t , typename value_t , size_t DIM>
bool Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::hasEntity ( ) const

Check whether this node as an associated entity. If it does not have one, this is a purely abstract container box.

Returns
Whether the box has an entity attached.

Definition at line 209 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 209 of file BoundingBox.ipp

template<typename entity_t , typename value_t , size_t DIM>
bool Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::intersect ( const VertexType point) const

Calculate whether a point is inside this box.

Parameters
pointThe point to test.
Returns
Whether the point is inside or not.

Definition at line 111 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 111 of file BoundingBox.ipp

References t.

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and main().

+ Here is the caller graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
bool Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::intersect ( const Ray< value_type, DIM > &  ray) const

Implements the slab method for Ray/AABB intersections.

See https://tavianator.com/fast-branchless-raybounding-box-intersections/, https://tavianator.com/fast-branchless-raybounding-box-intersections-part-2-nans/, https://medium.com/@bromanz/another-view-on-the-classic-ray-aabb-intersection-algorithm-for-bvh-traversal-41125138b525 The original algorithms is described in "Graphics Gems (1990)" 1

Note
This implementation may treat parallel rays on any of the slabs as outside due to how NaNs are handled by Eigen. See http://eigen.tuxfamily.org/bz/show_bug.cgi?id=564
Parameters
rayThe ray to intersect with
Returns
Whether the ray intersects this AABB

Definition at line 118 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 118 of file BoundingBox.ipp

References Acts::Ray< value_t, DIM >::idir(), Acts::Ray< value_t, DIM >::origin(), and Acts::Test::origin().

+ Here is the call graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
template<size_t sides>
bool Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::intersect ( const Frustum< value_type, DIM, sides > &  fr) const

Check if a frustum intersects with this bounding box.

This method implements an algorithm similar to the one described in "Optimized View Frustum Culling Algorithms for Bounding Boxes (2012)" 2, but drops some of the more sophisticated optimization.

Parameters
frThe frustum
Returns
Whether the frustum intersects this AABB

Definition at line 148 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 148 of file BoundingBox.ipp

References Acts::Frustum< value_t, DIM, SIDES >::normals(), and Acts::Frustum< value_t, DIM, SIDES >::origin().

+ Here is the call graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
const Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType & Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::max ( ) const

Get the maximum vertex

Returns
The maximum vertex

Definition at line 239 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 239 of file BoundingBox.ipp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and main().

+ Here is the caller graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
const Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType & Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::min ( ) const

Get the minimum vertex

Returns
The minimum vertex

Definition at line 233 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 233 of file BoundingBox.ipp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and main().

+ Here is the caller graph for this function:

template<typename entity_t, typename value_t , size_t DIM>
void Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::setEntity ( const entity_t *  entity)

Set the entity associated with with this box.

Parameters
entityThe entity

Definition at line 220 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 220 of file BoundingBox.ipp

template<typename entity_t , typename value_t , size_t DIM>
void Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::setSkip ( self_t skip)

Set the skip node (bounding box)

Parameters
skipThe target skip node pointer

Definition at line 186 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 186 of file BoundingBox.ipp

References Acts::Test::skip.

template<typename entity_t , typename value_t , size_t DIM>
template<size_t D, std::enable_if_t< D==2, int > >
std::ostream & Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::svg ( std::ostream &  os,
value_type  w,
value_type  h,
value_type  unit = 10,
std::string  label = "",
std::string  fillcolor = "grey" 
) const

Draw this bounding box as SVG. This method is only available for the 2D case.

Template Parameters
D(used for SFINAE)
Parameters
osThe output stream to write to
wThe width of the output SVG.
hThe height of the output SVG.
unitA scale factor to apply before drawing
labelA label to put next to the box.
fillcolorColor to fill the box with.
Returns
The outstream given in os.

Definition at line 389 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 389 of file BoundingBox.ipp

References color, DIM, m_center(), mid, and p.

+ Here is the call graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
std::ostream & Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::toStream ( std::ostream &  os) const

Write information about this bounding box to a stream.

Parameters
osThe output stream.
Returns
The stream given as an argument.

Definition at line 244 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 244 of file BoundingBox.ipp

References DIM, and m_center().

+ Here is the call graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
void Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::transform ( const transform_type trf)

Transforms this bounding box using the given transform. This method modifies the box it is called on.

Parameters
trfThe transform

Definition at line 338 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 338 of file BoundingBox.ipp

template<typename entity_t , typename value_t , size_t DIM>
Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM > Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::transformed ( const transform_type trf) const

Transforms this bounding box using the given transfom. This method returns a copy of this box, with the transformation applied, and leaves this instance unchanged.

Parameters
trfThe transform
Returns
The transformed bounding box

Definition at line 345 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 345 of file BoundingBox.ipp

Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), Acts::CutoutCylinderVolumeBounds::boundingBox(), Acts::CuboidVolumeBounds::boundingBox(), and Acts::ConeVolumeBounds::boundingBox().

+ Here is the caller graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
template<size_t D, std::enable_if_t< D==2, int > >
std::pair< typename Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType, typename Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType > Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::transformVertices ( const transform_type trf) const
private

Definition at line 282 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 282 of file BoundingBox.ipp

References vtx().

+ Here is the call graph for this function:

template<typename entity_t, typename value_t, size_t DIM>
template<size_t D = DIM, std::enable_if_t< D==3, int > = 0>
std::pair<VertexType, VertexType> Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::transformVertices ( const transform_type trf) const
private
template<typename entity_t , typename value_t , size_t DIM>
std::pair< typename Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType, typename Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType > Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::wrap ( const std::vector< const self_t * > &  boxes,
vertex_array_type  envelope = vertex_array_type::Zero() 
)
static

Helper function to calculate the size of a bounding box enclosing boxes.

Parameters
boxesThe boxes to wrap (const pointers)
envelopeOptional envelop to add/subtract to dimension.
Returns
Pair of vertixes: min and max.

Definition at line 61 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 61 of file BoundingBox.ipp

References max, and min.

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().

+ Here is the caller graph for this function:

template<typename entity_t , typename value_t , size_t DIM>
std::pair< typename Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType, typename Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType > Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::wrap ( const std::vector< self_t * > &  boxes,
vertex_array_type  envelope = vertex_array_type::Zero() 
)
static

Helper function to calculate the size of a bounding box enclosing boxes. Overload which accepts non-const boxes in boxes.

Parameters
boxesThe boxes to wrap (non-const pointers)
envelopeOptional envelop to add/subtract to dimension.
Returns
Pair of vertixes: min and max.

Definition at line 86 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 86 of file BoundingBox.ipp

References Acts::Test::transform.

template<typename entity_t , typename value_t , size_t DIM>
std::pair< typename Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType, typename Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::VertexType > Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::wrap ( const std::vector< self_t > &  boxes,
vertex_array_type  envelope = vertex_array_type::Zero() 
)
static

Helper function to calculate the size of a bounding box enclosing boxes. Overload which accepts a vector in boxes which owns the instances

Parameters
boxesThe boxes to wrap (by-value vector)
envelopeOptional envelop to add/subtract to dimension.
Returns
Pair of vertixes: min and max.

Definition at line 100 of file BoundingBox.ipp.

View newest version in sPHENIX GitHub at line 100 of file BoundingBox.ipp

References Acts::Test::transform.

Member Data Documentation

template<typename entity_t, typename value_t, size_t DIM>
const size_t Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::dim = DIM
static

Re-export dimension from template parameter

Definition at line 95 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 95 of file BoundingBox.hpp

template<typename entity_t, typename value_t, size_t DIM>
VertexType Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_center
private

Definition at line 325 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 325 of file BoundingBox.hpp

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().

template<typename entity_t, typename value_t, size_t DIM>
const entity_t* Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_entity
private

Definition at line 322 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 322 of file BoundingBox.hpp

template<typename entity_t, typename value_t, size_t DIM>
vertex_array_type Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_iwidth
private

Definition at line 327 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 327 of file BoundingBox.hpp

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().

template<typename entity_t, typename value_t, size_t DIM>
self_t* Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_left_child {nullptr}
private

Definition at line 329 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 329 of file BoundingBox.hpp

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().

template<typename entity_t, typename value_t, size_t DIM>
self_t* Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_right_child {nullptr}
private

Definition at line 330 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 330 of file BoundingBox.hpp

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().

template<typename entity_t, typename value_t, size_t DIM>
self_t* Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_skip {nullptr}
private

Definition at line 331 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 331 of file BoundingBox.hpp

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().

template<typename entity_t, typename value_t, size_t DIM>
VertexType Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_vmax
private

Definition at line 324 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 324 of file BoundingBox.hpp

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().

template<typename entity_t, typename value_t, size_t DIM>
VertexType Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_vmin
private

Definition at line 323 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 323 of file BoundingBox.hpp

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().

template<typename entity_t, typename value_t, size_t DIM>
vertex_array_type Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::m_width
private

Definition at line 326 of file BoundingBox.hpp.

View newest version in sPHENIX GitHub at line 326 of file BoundingBox.hpp

Referenced by Acts::AxisAlignedBoundingBox< entity_t, value_t, DIM >::AxisAlignedBoundingBox().


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