Go to the documentation of this file. 1 #ifndef _ThirdHitPrediction_h_
2 #define _ThirdHitPrediction_h_
51 const std::vector<const TrackingRecHit*>&
h,
52 std::vector<GlobalVector>& localDirs,
68 void fitParabola(
const float x[3],
const float y[3],
float par[3]);
69 void findRectangle(
const float x[3],
const float y[3],
const float par[3],
float phi[2],
float z[2]);
const TransientTrackingRecHitBuilder * theTTRecHitBuilder
const DetLayer * theLayer
bool isCompatibleWithMultipleScattering(GlobalPoint g3, const std::vector< const TrackingRecHit * > &h, std::vector< GlobalVector > &localDirs, const edm::EventSetup &es)
void calculateRangesBarrel(float r3, float phi[2], float z[2], bool keep)
float angleRatio(const Global2DVector &p3, const Global2DVector &c)
std::pair< float, float > arc_0m
ThirdHitPrediction(const TrackingRegion ®ion, GlobalPoint inner, GlobalPoint outer, const edm::EventSetup &es, double nSigMultipleScattering, double maxAngleRatio, std::string builderName)
void findRectangle(const float x[3], const float y[3], const float par[3], float phi[2], float z[2])
void spinCloser(float phi[3])
void calculateRanges(float rz3, float phi[2], float rz[2])
void fitParabola(const float x[3], const float y[3], float par[3])
std::pair< float, float > findTouchingCircles(float r)
void invertPoint(Global2DVector &p)
void getRanges(const DetLayer *layer, float phi[], float rz[])
constexpr std::array< uint8_t, layerIndexSize > layer
void initLayer(const DetLayer *layer)
void invertCircle(Global2DVector &c, float &r)
void calculateRangesForward(float z3, float phi[2], float r[2], bool keep)
std::pair< float, float > findArcIntersection(std::pair< float, float > a, std::pair< float, float > b, bool &keep)
void printOut(char *text)
std::pair< float, float > findMinimalCircles(float r)
Vector2DBase< float, GlobalTag > Global2DVector
float areaParallelogram(const Global2DVector &a, const Global2DVector &b)
PixelRecoRange< float > Range
TkTrackingRegionsMargin< float > Margin