LArSoft  v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
trkmkr::TrackMaker Class Referenceabstract

Base abstract class for tools used to fit tracks. More...

#include "TrackMaker.h"

Inheritance diagram for trkmkr::TrackMaker:
trkmkr::KalmanFilterFitTrackMaker

Public Member Functions

virtual ~TrackMaker () noexcept=default
 
virtual void initEvent (const art::Event &e)
 per-event initialization; concrete classes may override this function to retrieve other products or associations from the event. More...
 
virtual bool makeTrack (const art::Ptr< recob::TrackTrajectory > ttraj, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
 makeTrack functions with art::Ptr<recob::TrackTrajectory>; calls the purely virtual version with const recob::TrackTrajectory reference as argument. More...
 
virtual bool makeTrack (const recob::TrackTrajectory &ttraj, const int tkID, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const =0
 makeTrack functions with const recob::TrackTrajectory reference as argument: purely virtual, to be implemented in concrete classes. More...
 
virtual bool makeTrack (const recob::Trajectory &traj, const std::vector< recob::TrajectoryPointFlags > &flags, const int tkID, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
 makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory using a dummy flags vector. More...
 
virtual bool makeTrack (const art::Ptr< recob::Trajectory > traj, const std::vector< recob::TrajectoryPointFlags > &flags, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
 makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory using a dummy flags vector. More...
 
virtual bool makeTrack (const art::Ptr< recob::Track > track, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
 makeTrack functions with recob::Track as argument; calls the version with recob::TrackTrajectory. More...
 
virtual bool makeTrack (const recob::Track &track, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
 makeTrack functions with recob::Track as argument; calls the version with recob::TrackTrajectory. More...
 

Detailed Description

Base abstract class for tools used to fit tracks.

The virtual function makeTrack comes in different versions, one for each possible input (Trajectory, TrackTrajectory, Track), both using const references and art pointers as input). The functions return a bool corresponding to the success or failure status of the fit.

The only purely virtual function is the one for input Trajectories (by default the other two just forward the call to it). Its arguments are the const inputs (Trajectory, TrajectoryPointFlags, track ID) and the non-const ouputs (mandatory: outTrack and outHits; optional outputs stored in OptionalOutputs).

In case other products are needed from the event (e.g. associations to the input), they can be retrieved overriding the initEvent function.

The tool is not meant to put collections in the event.

Requirements are that a Track has at least 2 points, that it has the same number of Points and Momenta, that TrajectoryPoints and Hit have a 1-1 correspondance (same number and same order).

Author
G. Cerati (FNAL, MicroBooNE)
Date
2017
Version
1.0

Definition at line 153 of file TrackMaker.h.

Constructor & Destructor Documentation

virtual trkmkr::TrackMaker::~TrackMaker ( )
virtualdefaultnoexcept

Member Function Documentation

virtual void trkmkr::TrackMaker::initEvent ( const art::Event e)
inlinevirtual

per-event initialization; concrete classes may override this function to retrieve other products or associations from the event.

Reimplemented in trkmkr::KalmanFilterFitTrackMaker.

Definition at line 158 of file TrackMaker.h.

References recob::Trajectory::NPoints(), and lar::dump::vector().

158 { return; }
virtual bool trkmkr::TrackMaker::makeTrack ( const recob::Trajectory traj,
const std::vector< recob::TrajectoryPointFlags > &  flags,
const int  tkID,
const std::vector< art::Ptr< recob::Hit > > &  inHits,
recob::Track outTrack,
std::vector< art::Ptr< recob::Hit > > &  outHits,
OptionalOutputs optionals 
) const
inlinevirtual

makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory using a dummy flags vector.

Definition at line 162 of file TrackMaker.h.

165  {
166  return makeTrack(recob::TrackTrajectory(traj,recob::TrackTrajectory::Flags_t(traj.NPoints())), tkID, inHits, outTrack, outHits, optionals);
167  }
size_t NPoints() const
Returns the number of stored trajectory points.
Definition: Trajectory.h:173
A trajectory in space reconstructed from hits.
std::vector< PointFlags_t > Flags_t
Type of point flag list.
virtual bool makeTrack(const recob::Trajectory &traj, const std::vector< recob::TrajectoryPointFlags > &flags, const int tkID, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory...
Definition: TrackMaker.h:162
virtual bool trkmkr::TrackMaker::makeTrack ( const art::Ptr< recob::Trajectory traj,
const std::vector< recob::TrajectoryPointFlags > &  flags,
const std::vector< art::Ptr< recob::Hit > > &  inHits,
recob::Track outTrack,
std::vector< art::Ptr< recob::Hit > > &  outHits,
OptionalOutputs optionals 
) const
inlinevirtual

makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory using a dummy flags vector.

Definition at line 168 of file TrackMaker.h.

References art::Ptr< T >::key(), and recob::Trajectory::NPoints().

171  {
172  return makeTrack(recob::TrackTrajectory(*traj,recob::TrackTrajectory::Flags_t(traj->NPoints())), traj.key(), inHits, outTrack, outHits, optionals);
173  }
key_type key() const
Definition: Ptr.h:356
size_t NPoints() const
Returns the number of stored trajectory points.
Definition: Trajectory.h:173
A trajectory in space reconstructed from hits.
std::vector< PointFlags_t > Flags_t
Type of point flag list.
virtual bool makeTrack(const recob::Trajectory &traj, const std::vector< recob::TrajectoryPointFlags > &flags, const int tkID, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory...
Definition: TrackMaker.h:162
virtual bool trkmkr::TrackMaker::makeTrack ( const art::Ptr< recob::TrackTrajectory ttraj,
const std::vector< art::Ptr< recob::Hit > > &  inHits,
recob::Track outTrack,
std::vector< art::Ptr< recob::Hit > > &  outHits,
OptionalOutputs optionals 
) const
inlinevirtual

makeTrack functions with art::Ptr<recob::TrackTrajectory>; calls the purely virtual version with const recob::TrackTrajectory reference as argument.

Definition at line 177 of file TrackMaker.h.

References art::Ptr< T >::key(), track, recob::Track::Trajectory(), and lar::dump::vector().

179  {
180  return makeTrack(*ttraj, ttraj.key(), inHits, outTrack, outHits, optionals);
181  }
key_type key() const
Definition: Ptr.h:356
virtual bool makeTrack(const recob::Trajectory &traj, const std::vector< recob::TrajectoryPointFlags > &flags, const int tkID, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory...
Definition: TrackMaker.h:162
virtual bool trkmkr::TrackMaker::makeTrack ( const recob::TrackTrajectory ttraj,
const int  tkID,
const std::vector< art::Ptr< recob::Hit > > &  inHits,
recob::Track outTrack,
std::vector< art::Ptr< recob::Hit > > &  outHits,
OptionalOutputs optionals 
) const
pure virtual

makeTrack functions with const recob::TrackTrajectory reference as argument: purely virtual, to be implemented in concrete classes.

virtual bool trkmkr::TrackMaker::makeTrack ( const art::Ptr< recob::Track track,
const std::vector< art::Ptr< recob::Hit > > &  inHits,
recob::Track outTrack,
std::vector< art::Ptr< recob::Hit > > &  outHits,
OptionalOutputs optionals 
) const
inlinevirtual

makeTrack functions with recob::Track as argument; calls the version with recob::TrackTrajectory.

Definition at line 189 of file TrackMaker.h.

191  {
192  return makeTrack(track->Trajectory(), track.key(), inHits, outTrack, outHits, optionals);
193  }
key_type key() const
Definition: Ptr.h:356
const recob::TrackTrajectory & Trajectory() const
Access to the stored recob::TrackTrajectory.
Definition: Track.h:101
virtual bool makeTrack(const recob::Trajectory &traj, const std::vector< recob::TrajectoryPointFlags > &flags, const int tkID, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory...
Definition: TrackMaker.h:162
virtual bool trkmkr::TrackMaker::makeTrack ( const recob::Track track,
const std::vector< art::Ptr< recob::Hit > > &  inHits,
recob::Track outTrack,
std::vector< art::Ptr< recob::Hit > > &  outHits,
OptionalOutputs optionals 
) const
inlinevirtual

makeTrack functions with recob::Track as argument; calls the version with recob::TrackTrajectory.

Definition at line 195 of file TrackMaker.h.

References recob::Track::ID(), and recob::Track::Trajectory().

197  {
198  return makeTrack(track.Trajectory(), track.ID(), inHits, outTrack, outHits, optionals);
199  }
const recob::TrackTrajectory & Trajectory() const
Access to the stored recob::TrackTrajectory.
Definition: Track.h:101
virtual bool makeTrack(const recob::Trajectory &traj, const std::vector< recob::TrajectoryPointFlags > &flags, const int tkID, const std::vector< art::Ptr< recob::Hit > > &inHits, recob::Track &outTrack, std::vector< art::Ptr< recob::Hit > > &outHits, OptionalOutputs &optionals) const
makeTrack functions with recob::Trajectory as argument; calls the version with recob::TrackTrajectory...
Definition: TrackMaker.h:162
int ID() const
Definition: Track.h:201

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