Pandora
Pandora source code navigator
Loading...
Searching...
No Matches
LongitudinalTrackHitsBaseTool.h
Go to the documentation of this file.
1
8#ifndef LONGITUDINAL_TRACK_HITS_BASE_TOOL_H
9#define LONGITUDINAL_TRACK_HITS_BASE_TOOL_H 1
10
12
13namespace lar_content
14{
15
20{
21public:
26
27protected:
36 virtual void GetLongitudinalTrackHit3D(const MatchedSlidingFitMap &matchedSlidingFitMap, const pandora::CartesianVector &vtx3D,
37 const pandora::CartesianVector &end3D, ProtoHit &protoHit) const = 0;
38
39 virtual void GetTrackHits3D(
40 const pandora::CaloHitVector &inputTwoDHits, const MatchedSlidingFitMap &matchedSlidingFitMap, ProtoHitVector &protoHitVector) const;
41
43
44private:
53 void GetVertexAndEndPositions(const MatchedSlidingFitMap &inputSlidingFitMap, MatchedSlidingFitMap &outputSlidingFitMap,
54 pandora::CartesianVector &outputVtx3D, pandora::CartesianVector &outputEnd3D) const;
55
66 void UpdateBestPosition(const pandora::HitType hitType1, const pandora::HitType hitType2, const pandora::CartesianVector &vtx1,
67 const pandora::CartesianVector &vtx2, pandora::CartesianVector &bestVtx, float &bestChi2) const;
68
71};
72
73} // namespace lar_content
74
75#endif // #ifndef LONGITUDINAL_TRACK_HITS_BASE_TOOL_H
Header file for the track hits base tool.
ThreeDHitCreationAlgorithm::ProtoHitVector ProtoHitVector
void UpdateBestPosition(const pandora::HitType hitType1, const pandora::HitType hitType2, const pandora::CartesianVector &vtx1, const pandora::CartesianVector &vtx2, pandora::CartesianVector &bestVtx, float &bestChi2) const
Combine two 2D coordinates to give a 3D coordinate.
virtual void GetLongitudinalTrackHit3D(const MatchedSlidingFitMap &matchedSlidingFitMap, const pandora::CartesianVector &vtx3D, const pandora::CartesianVector &end3D, ProtoHit &protoHit) const =0
Get the three dimensional position using a provided two dimensional calo hit and sliding linear fits ...
void GetVertexAndEndPositions(const MatchedSlidingFitMap &inputSlidingFitMap, MatchedSlidingFitMap &outputSlidingFitMap, pandora::CartesianVector &outputVtx3D, pandora::CartesianVector &outputEnd3D) const
Get reconstructed vertex and end positions for this 3D track.
virtual pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
Read the algorithm settings.
virtual void GetTrackHits3D(const pandora::CaloHitVector &inputTwoDHits, const MatchedSlidingFitMap &matchedSlidingFitMap, ProtoHitVector &protoHitVector) const
Calculate 3D hits from an input list of 2D hits.
Proto hits are temporary constructs to be used during iterative 3D hit procedure.
TrackHitsBaseTool class.
std::map< pandora::HitType, TwoDSlidingFitResult > MatchedSlidingFitMap
CartesianVector class.
HitType
Calorimeter hit type enum.
std::vector< const CaloHit * > CaloHitVector
StatusCode
The StatusCode enum.