1 #ifndef TRACKCREATIONBOOKKEEPER_H 2 #define TRACKCREATIONBOOKKEEPER_H 26 using namespace recob;
35 : ttcbk_(outhits, hasMomenta), tkID_(tkID), pdgHyp_(pdgHyp), totChi2_(0),
opts(&optionals), nfittedpars(nfitpars)
51 ttcbk_.addPoint(point, vect, hit, flag);
53 chi2v.push_back(chi2);
58 addPoint(point, vect, hit, flag, chi2);
64 chi2v.push_back(chi2);
80 return Track(ttcbk_.finalizeTrackTrajectory(),pdgHyp_,totChi2_,
int(chi2v.size())-nfittedpars,
84 return Track(ttcbk_.finalizeTrackTrajectory(),pdgHyp_,totChi2_,
int(chi2v.size())-nfittedpars,
recob::TrajectoryPointFlags PointFlags_t
Type for flags of a point/hit.
tracking::Point_t Point_t
void setTotChi2(double totChi2)
Set the total chi2 value.
Reconstruction base classes.
ROOT::Math::SMatrix< Double32_t, 5, 5, ROOT::Math::MatRepSym< Double32_t, 5 > > SMatrixSym55
trkmkr::TrackTrajectoryCreationBookKeeper ttcbk_
void addPoint(Point_t &&point, Vector_t &&vect, art::Ptr< Hit > hit, PointFlags_t &&flag, double chi2)
void addPoint(const Point_t &point, const Vector_t &vect, art::Ptr< Hit > hit, const PointFlags_t &flag, double chi2)
Add a single point; different version of the functions are provided using const references or rvalue ...
tracking::Vector_t Vector_t
Track finalizeTrack(const tracking::SMatrixSym55 &covStart, const tracking::SMatrixSym55 &covEnd)
Get the finalized recob::Track; needs the start and end covariance matrices.
void addPoint(Point_t &&point, Vector_t &&vect, art::Ptr< Hit > hit, PointFlags_t &&flag, double chi2, OptionalPointElement &ope)
TrackCreationBookKeeper(std::vector< art::Ptr< Hit > > &outhits, OptionalOutputs &optionals, int tkID, int pdgHyp, bool hasMomenta, int nfitpars=4)
Constructor: needs reference to output hit vector, optional outputs struct, and other parameters need...
Helper class to aid the creation of a recob::TrackTrajectory, keeping data vectors in sync...
Struct holding point-by-point elements used in OptionalOutputs.
Track finalizeTrack(tracking::SMatrixSym55 &&covStart, tracking::SMatrixSym55 &&covEnd)
Detector simulation of raw signals on wires.
void addPoint(const Point_t &point, const Vector_t &vect, art::Ptr< Hit > hit, const PointFlags_t &flag, double chi2, OptionalPointElement &ope)
recob::tracking::SMatrixSym55 SMatrixSym55
Provides recob::Track data product.
Helper class to aid the creation of a recob::Track, keeping data vectors in sync. ...
TrackCollectionProxyElement< TrackCollProxy > Track
Proxy to an element of a proxy collection of recob::Track objects.
std::vector< double > chi2v
recob::tracking::Vector_t Vector_t
Struct holding optional TrackMaker outputs.
Set of flags pertaining a point of the track.
Track from a non-cascading particle.A recob::Track consists of a recob::TrackTrajectory, plus additional members relevant for a "fitted" track: