APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
Static Public Member Functions | List of all members
april_content::GeometryHelper Class Reference

GeometryHelper class. More...

#include <GeometryHelper.h>

Static Public Member Functions

static pandora::StatusCode GetClosestDistanceBetweenLines (const pandora::CartesianVector &point1, const pandora::CartesianVector &direction1, const pandora::CartesianVector &point2, const pandora::CartesianVector &direction2, float &distance)
 Get the closest distance between the two lines. More...
 
static pandora::StatusCode GetClosestDistanceToLine (const pandora::CartesianVector &point1, const pandora::CartesianVector &direction1, const pandora::CartesianVector &point2, float &impactParameter)
 Get the closest distance between a point and a line. More...
 
static pandora::StatusCode GetProjectionOnLine (const pandora::CartesianVector &linePoint, const pandora::CartesianVector &direction, const pandora::CartesianVector &point, pandora::CartesianVector &projection)
 Get the projection of a point on the line. More...
 
static pandora::StatusCode GetCrossingPointsBetweenLines (const pandora::CartesianVector &point1, const pandora::CartesianVector &direction1, const pandora::CartesianVector &point2, const pandora::CartesianVector &direction2, pandora::CartesianVector &crossingPoint1, pandora::CartesianVector &crossingPoint2)
 Get the two crossing points of two lines at the closest distance approach. More...
 
static pandora::StatusCode GetLinePlaneCrossingPoint (const pandora::CartesianVector &linePoint, const pandora::CartesianVector &lineDirection, float planeA, float planeB, float planeC, float planeD, pandora::CartesianVector &crossingPoint)
 Get the crossing point between a line and a plane in space. The equation plane is defined as : More...
 
static pandora::StatusCode GetECalHCalEndCapGapSize (const pandora::Pandora &pandora, float &gapSize)
 Get the gap size between the ECal end cap and the HCal end cap. More...
 
static pandora::StatusCode GetECalHCalBarrelGapSize (const pandora::Pandora &pandora, float &gapSize)
 Get the gap size between the ECal barrel and the HCal barrel. More...
 
static pandora::StatusCode GetTrackerECalEndCapGapSize (const pandora::Pandora &pandora, float &gapSize)
 Get the gap size between the tracker and ECal end cap. More...
 
static pandora::StatusCode GetTrackerECalBarrelGapSize (const pandora::Pandora &pandora, float &gapSize)
 Get the gap size between the tracker and ECal barrel. More...
 
static pandora::StatusCode GetEndcapGapSeparation (const pandora::Pandora &pandora, const pandora::CaloHit *const pEcalCaloHit, const pandora::CaloHit *const pHcalCaloHit, float &gapSeparation)
 Get the gap separation in the end cap region between two calo hits. More...
 
static pandora::StatusCode GetBarrelGapSeparation (const pandora::Pandora &pandora, const pandora::CaloHit *const pEcalCaloHit, const pandora::CaloHit *const pHcalCaloHit, float &gapSeparation)
 Get the gap separation in the barrel region between two calo hits. More...
 
static pandora::StatusCode GetOuterNormaleVector (const pandora::Pandora &pandora, pandora::SubDetectorType type, const pandora::CartesianVector &point, pandora::CartesianVector &normaleVector)
 Get the normale vector at outer detector face in the phi region where the point is contained. More...
 
static pandora::StatusCode GetInnerNormaleVector (const pandora::Pandora &pandora, pandora::SubDetectorType type, const pandora::CartesianVector &point, pandora::CartesianVector &normaleVector)
 Get the normale vector at inner detector face in the phi region where the point is contained. More...
 
static pandora::StatusCode GetProjectionOnHelix (const pandora::Helix &helix, const pandora::CartesianVector &point, pandora::CartesianVector &projection)
 Get the projection of a point on the helix. More...
 
static pandora::StatusCode GetDistanceToHelix (const pandora::Helix &helix, const pandora::CartesianVector &point, float &distanceToHelix)
 Get the distance between a point and the helix. More...
 

Detailed Description

GeometryHelper class.

Member Function Documentation

pandora::StatusCode april_content::GeometryHelper::GetBarrelGapSeparation ( const pandora::Pandora &  pandora,
const pandora::CaloHit *const  pEcalCaloHit,
const pandora::CaloHit *const  pHcalCaloHit,
float &  gapSeparation 
)
static

Get the gap separation in the barrel region between two calo hits.

Parameters
pandorathe pandora instance to access geometry parameters
pEcalCaloHitthe ecal calo hit address in the barrel region
pHcalCaloHitthe hcal calo hit address in the barrel region
gapSeparationthe gap separation distance to receive
pandora::StatusCode april_content::GeometryHelper::GetClosestDistanceBetweenLines ( const pandora::CartesianVector &  point1,
const pandora::CartesianVector &  direction1,
const pandora::CartesianVector &  point2,
const pandora::CartesianVector &  direction2,
float &  distance 
)
static

Get the closest distance between the two lines.

Parameters
point1on the line 1
direction1of the line1
point2on the line 2
direction2of the line 2
theclosest distance to receive
pandora::StatusCode april_content::GeometryHelper::GetClosestDistanceToLine ( const pandora::CartesianVector &  point1,
const pandora::CartesianVector &  direction1,
const pandora::CartesianVector &  point2,
float &  impactParameter 
)
static

Get the closest distance between a point and a line.

Parameters
point1on the line
direction1of the line
point2in the space
theclosest distance between the point and the line to receive
pandora::StatusCode april_content::GeometryHelper::GetCrossingPointsBetweenLines ( const pandora::CartesianVector &  point1,
const pandora::CartesianVector &  direction1,
const pandora::CartesianVector &  point2,
const pandora::CartesianVector &  direction2,
pandora::CartesianVector &  crossingPoint1,
pandora::CartesianVector &  crossingPoint2 
)
static

Get the two crossing points of two lines at the closest distance approach.

Parameters
point1on the line 1
direction1of the line 1
point2on the line 2
direction2of the line 2
crossingPoint1the crossing point on the line 1 to receive
crossingPoint2the crossing point on the line 2 to receive
pandora::StatusCode april_content::GeometryHelper::GetDistanceToHelix ( const pandora::Helix &  helix,
const pandora::CartesianVector &  point,
float &  distanceToHelix 
)
static

Get the distance between a point and the helix.

Parameters
helixthe helix to consider
pointa point in space
distanceToHelixthe distance to the helix to receive
pandora::StatusCode april_content::GeometryHelper::GetECalHCalBarrelGapSize ( const pandora::Pandora &  pandora,
float &  gapSize 
)
static

Get the gap size between the ECal barrel and the HCal barrel.

Parameters
pandorathe pandora instance to access geometry parameters
gapSizethe gap size to receive
pandora::StatusCode april_content::GeometryHelper::GetECalHCalEndCapGapSize ( const pandora::Pandora &  pandora,
float &  gapSize 
)
static

Get the gap size between the ECal end cap and the HCal end cap.

Parameters
pandorathe pandora instance to access geometry parameters
gapSizethe gap size to receive
pandora::StatusCode april_content::GeometryHelper::GetEndcapGapSeparation ( const pandora::Pandora &  pandora,
const pandora::CaloHit *const  pEcalCaloHit,
const pandora::CaloHit *const  pHcalCaloHit,
float &  gapSeparation 
)
static

Get the gap separation in the end cap region between two calo hits.

Parameters
pandorathe pandora instance to access geometry parameters
pEcalCaloHitthe ecal calo hit address in the end cap region
pHcalCaloHitthe hcal calo hit address in the end cap region
gapSeparationthe gap separation distance to receive
pandora::StatusCode april_content::GeometryHelper::GetInnerNormaleVector ( const pandora::Pandora &  pandora,
pandora::SubDetectorType  type,
const pandora::CartesianVector &  point,
pandora::CartesianVector &  normaleVector 
)
static

Get the normale vector at inner detector face in the phi region where the point is contained.

Parameters
pandorathe pandora instance to access geometry parameters
typethe sub detector type (requires access to inner symmetry order)
pointa point in space that fixes the phi region
normaleVectorthe normal vector at the inner detector face to receive
pandora::StatusCode april_content::GeometryHelper::GetLinePlaneCrossingPoint ( const pandora::CartesianVector &  linePoint,
const pandora::CartesianVector &  lineDirection,
float  planeA,
float  planeB,
float  planeC,
float  planeD,
pandora::CartesianVector &  crossingPoint 
)
static

Get the crossing point between a line and a plane in space. The equation plane is defined as :

P : a*x + b*y + c*z + d = 0

Parameters
linePointa point on the line
lineDirectionthe line direction vector
planeAthe a component in the plane equation
planeBthe b component in the plane equation
planeCthe c component in the plane equation
planeDthe d component in the plane equation
crossingPointthe crossing point vector position to receive
pandora::StatusCode april_content::GeometryHelper::GetOuterNormaleVector ( const pandora::Pandora &  pandora,
pandora::SubDetectorType  type,
const pandora::CartesianVector &  point,
pandora::CartesianVector &  normaleVector 
)
static

Get the normale vector at outer detector face in the phi region where the point is contained.

Parameters
pandorathe pandora instance to access geometry parameters
typethe sub detector type (requires access to outer symetry order)
pointa point in space that fixes the phi region
normaleVectorthe normale vector at the outer detector face to receive
pandora::StatusCode april_content::GeometryHelper::GetProjectionOnHelix ( const pandora::Helix &  helix,
const pandora::CartesianVector &  point,
pandora::CartesianVector &  projection 
)
static

Get the projection of a point on the helix.

Parameters
helixthe helix to consider
pointthe point in space to project on the helix
projectionthe projection point to receive
pandora::StatusCode april_content::GeometryHelper::GetProjectionOnLine ( const pandora::CartesianVector &  linePoint,
const pandora::CartesianVector &  direction,
const pandora::CartesianVector &  point,
pandora::CartesianVector &  projection 
)
static

Get the projection of a point on the line.

Parameters
linePointon the line
direction1of the line
pointin the space
projectionthe projection vector on the line to receive
pandora::StatusCode april_content::GeometryHelper::GetTrackerECalBarrelGapSize ( const pandora::Pandora &  pandora,
float &  gapSize 
)
static

Get the gap size between the tracker and ECal barrel.

Parameters
pandorathe pandora instance to access geometry parameters
gapSizethe gap size to receive
pandora::StatusCode april_content::GeometryHelper::GetTrackerECalEndCapGapSize ( const pandora::Pandora &  pandora,
float &  gapSize 
)
static

Get the gap size between the tracker and ECal end cap.

Parameters
pandorathe pandora instance to access geometry parameters
gapSizethe gap size to receive

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