An algorithm that calculate the intersections between a track and the STK.
More...
#include <algorithms/geometry/StkIntersectionsAlgo.h>
An algorithm that calculate the intersections between a track and the STK.
Needed event objects:
| name | type | store | optional | description |
| mcTruth | MCTruth | evStore | no | Info about MC truth |
Produced global objects:
| name | type | store | optional | description |
| stkIntersectionsMC | StkIntersections | evStore | no | Info about the intersections between a track and a STK. |
◆ StkIntersectionsAlgo()
| Herd::StkIntersectionsAlgo::StkIntersectionsAlgo |
( |
const std::string & |
name | ) |
|
Constructor.
- Parameters
-
| name | The name of the algorithm object. |
◆ CheckIfPointIsInABox()
| bool Herd::StkIntersectionsAlgo::CheckIfPointIsInABox |
( |
const Point & |
p1, |
|
|
const Point & |
p2, |
|
|
const Point |
p |
|
) |
| |
|
private |
Check if a Point is inside a 3D Box.
- Parameters
-
| p1 | a corner of the Box. |
| p2 | the opposite corner of the Box. |
| p | the point. |
- Returns
- true if the point is inside the Box, false otherwise.
◆ CheckIfPointIsInABox_SpecificCorners()
| bool Herd::StkIntersectionsAlgo::CheckIfPointIsInABox_SpecificCorners |
( |
const Point & |
pXNegYNegZNeg, |
|
|
const Point & |
pXPosYPosZPos, |
|
|
const Point |
p |
|
) |
| |
|
private |
Check if a Point is inside a 3D Box.
- Parameters
-
| pXNegYNegZNeg | the bottom corner with the minor X and Y coordinates. |
| pXPosYPosZPos | the top corner with the major X and Y coordinates. |
| p | the point. |
- Returns
- true if the point is inside the Box, false otherwise.
◆ CheckIfPointIsInStkSurface()
| bool Herd::StkIntersectionsAlgo::CheckIfPointIsInStkSurface |
( |
const Point & |
p, |
|
|
const RefFrame::Side & |
view |
|
) |
| |
|
private |
Check if a Point is inside a STK surface.
- Parameters
-
| p | the point. |
| view | select which STK is taken into account. |
- Returns
- true if the point is inside the finite plane, false otherwise.
◆ Finalize()
| bool Herd::StkIntersectionsAlgo::Finalize |
( |
| ) |
|
Do nothing.
- Returns
- true if no error occurs during finalization, false otherwise.
◆ Initialize()
| bool Herd::StkIntersectionsAlgo::Initialize |
( |
| ) |
|
Initializes the planes used to compute the STK info.
- Returns
- true if initialization is done without errors, false otherwise.
◆ PntDistance()
| float Herd::StkIntersectionsAlgo::PntDistance |
( |
const Point & |
p1, |
|
|
const Point & |
p2 |
|
) |
| |
|
private |
Computes the distance between two points (To be removed from here).
- Parameters
-
| p1 | the first point. |
| p2 | the second point. |
- Returns
- the distance.
◆ Process()
| bool Herd::StkIntersectionsAlgo::Process |
( |
| ) |
|
Computes the STK information, so far the MC truth is used.
- Returns
- true if no error occurs during processing, false otherwise.
◆ _evStore
| observer_ptr<EventDataStore> Herd::StkIntersectionsAlgo::_evStore |
|
private |
Pointer to the event data store.
◆ _NStkLayers
| const unsigned int Herd::StkIntersectionsAlgo::_NStkLayers |
|
private |
◆ _Planes
STK surfaces for each side and each layer.
◆ _Prec
| const float Herd::StkIntersectionsAlgo::_Prec |
|
private |
◆ _stkIntersections
The stkIntersections object to fill with the computed information.
◆ _topStkDX
| const float Herd::StkIntersectionsAlgo::_topStkDX |
|
private |
◆ _topStkDY
| const float Herd::StkIntersectionsAlgo::_topStkDY |
|
private |
◆ _topStkX
| const float Herd::StkIntersectionsAlgo::_topStkX |
|
private |
◆ _topStkY
| const float Herd::StkIntersectionsAlgo::_topStkY |
|
private |
◆ _topStkZ
| const float Herd::StkIntersectionsAlgo::_topStkZ[12] |
|
private |
◆ _XnegStkDY
| const float Herd::StkIntersectionsAlgo::_XnegStkDY |
|
private |
◆ _XnegStkDZ
| const float Herd::StkIntersectionsAlgo::_XnegStkDZ |
|
private |
◆ _XnegStkX
| const float Herd::StkIntersectionsAlgo::_XnegStkX[12] |
|
private |
◆ _XnegStkY
| const float Herd::StkIntersectionsAlgo::_XnegStkY |
|
private |
◆ _XnegStkZ
| const float Herd::StkIntersectionsAlgo::_XnegStkZ |
|
private |
◆ _XposStkDY
| const float Herd::StkIntersectionsAlgo::_XposStkDY |
|
private |
◆ _XposStkDZ
| const float Herd::StkIntersectionsAlgo::_XposStkDZ |
|
private |
◆ _XposStkX
| const float Herd::StkIntersectionsAlgo::_XposStkX[12] |
|
private |
◆ _XposStkY
| const float Herd::StkIntersectionsAlgo::_XposStkY |
|
private |
◆ _XposStkZ
| const float Herd::StkIntersectionsAlgo::_XposStkZ |
|
private |
◆ _YnegStkDX
| const float Herd::StkIntersectionsAlgo::_YnegStkDX |
|
private |
◆ _YnegStkDZ
| const float Herd::StkIntersectionsAlgo::_YnegStkDZ |
|
private |
◆ _YnegStkX
| const float Herd::StkIntersectionsAlgo::_YnegStkX |
|
private |
◆ _YnegStkY
| const float Herd::StkIntersectionsAlgo::_YnegStkY[12] |
|
private |
◆ _YnegStkZ
| const float Herd::StkIntersectionsAlgo::_YnegStkZ |
|
private |
◆ _YposStkDX
| const float Herd::StkIntersectionsAlgo::_YposStkDX |
|
private |
◆ _YposStkDZ
| const float Herd::StkIntersectionsAlgo::_YposStkDZ |
|
private |
◆ _YposStkX
| const float Herd::StkIntersectionsAlgo::_YposStkX |
|
private |
◆ _YposStkY
| const float Herd::StkIntersectionsAlgo::_YposStkY[12] |
|
private |
◆ _YposStkZ
| const float Herd::StkIntersectionsAlgo::_YposStkZ |
|
private |
The documentation for this class was generated from the following files: