Belle II Software development
AImpactSweeped< T, AImpact > Class Template Reference

Takes a basic object and sweeps it by some d0 range in the y direction. More...

#include <ImpactSweeped.h>

Inheritance diagram for AImpactSweeped< T, AImpact >:

Public Types

using HoughBox = SweepBox< AImpact, typename T::HoughBox >
 The box to which this object correspondes.
 
using SubordinaryHoughBox = typename T::HoughBox
 The hough box without the sweep in d0.
 

Public Member Functions

ESign getDistanceSign (const HoughBox &houghBox, float x, float y, float signedDriftLength, float dxdz=0, float dydz=0, ILayer iCLayer=-1) const
 Function that gives the sign of the distance from an observed drift circle to the sweeped object.
 

Detailed Description

template<class T, class AImpact = ContinuousImpact>
class Belle2::TrackFindingCDC::AImpactSweeped< T, AImpact >

Takes a basic object and sweeps it by some d0 range in the y direction.

The sweep in phi0 should be handled before

Definition at line 26 of file ImpactSweeped.h.

Member Typedef Documentation

◆ HoughBox

using HoughBox = SweepBox<AImpact, typename T::HoughBox>

The box to which this object correspondes.

Definition at line 34 of file ImpactSweeped.h.

◆ SubordinaryHoughBox

using SubordinaryHoughBox = typename T::HoughBox

The hough box without the sweep in d0.

Definition at line 37 of file ImpactSweeped.h.

Member Function Documentation

◆ getDistanceSign()

ESign getDistanceSign ( const HoughBox houghBox,
float  x,
float  y,
float  signedDriftLength,
float  dxdz = 0,
float  dydz = 0,
ILayer  iCLayer = -1 
) const
inline

Function that gives the sign of the distance from an observed drift circle to the sweeped object.

Definition at line 42 of file ImpactSweeped.h.

49 {
50 float lowerImpact(houghBox.template getLowerBound<AImpact>());
51 float upperImpact(houghBox.template getUpperBound<AImpact>());
52 const SubordinaryHoughBox& subordinaryHoughBox = houghBox.getSubordinaryBox();
53
54 const float lowerY = y - lowerImpact;
55 const ESign lowerDistSign = T::getDistanceSign(subordinaryHoughBox,
56 x, lowerY,
57 signedDriftLength,
58 dxdz, dydz,
59 iCLayer);
60
61 const float upperY = y - upperImpact;
62 const ESign upperDistSign = T::getDistanceSign(subordinaryHoughBox,
63 x, upperY,
64 signedDriftLength,
65 dxdz, dydz,
66 iCLayer);
67
68 return ESignUtil::common(lowerDistSign, upperDistSign);
69 }
typename T::HoughBox SubordinaryHoughBox
The hough box without the sweep in d0.
Definition: ImpactSweeped.h:37
ESign
Enumeration for the distinct sign values of floating point variables.
Definition: ESign.h:27
static ESign common(ESign n1, ESign n2)
Check if two values have a common sign.
Definition: ESign.h:57

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