8 #include "canvas/Persistency/Common/Ptr.h"
25 class DetectorPropertiesData;
53 trackFitHitInfo = std::make_unique<recob::TrackFitHitInfo>(std::move(aTrackFitHitInfo));
58 trackFitHitInfo = std::make_unique<recob::TrackFitHitInfo>(aTrackFitHitInfo);
79 spacePoint = std::make_unique<recob::SpacePoint>(aSpacePoint);
84 spacePoint = std::make_unique<recob::SpacePoint>(aSpacePoint);
127 typedef std::pair<recob::SpacePoint, art::Ptr<recob::Hit>>
SpHitPair;
184 std::vector<recob::TrackFitHitInfo>
188 throw std::logic_error(
"outTrackFitHitInfos is not available (any more?).");
194 std::vector<SpHitPair>
198 throw std::logic_error(
"outSpacePointHitPairs is not available (any more?).");
248 const std::vector<recob::TrajectoryPointFlags>& flags,
266 const art::Ptr<recob::Trajectory> traj,
267 const std::vector<recob::TrajectoryPointFlags>& flags,
287 const art::Ptr<recob::TrackTrajectory> ttraj,
293 return makeTrack(detProp, *ttraj, ttraj.key(), inHits, outTrack, outHits, optionals);
311 const art::Ptr<recob::Track>
track,
318 detProp, track->Trajectory(), track.key(), inHits, outTrack, outHits, optionals);
330 detProp, track.
Trajectory(), track.
ID(), inHits, outTrack, outHits, optionals);
virtual bool makeTrack(const detinfo::DetectorPropertiesData &detProp, 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 cons...
bool isTrackFitInfoSet()
check if the recob::TrackFitHitInfo unique_ptr is set
Data product for reconstructed trajectory in space.
virtual bool makeTrack(const detinfo::DetectorPropertiesData &detProp, 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
void initTrackFitInfos()
initialize the output vector of TrackFitHitInfos
void setTrackFitHitInfo(const recob::TrackFitHitInfo &aTrackFitHitInfo)
const recob::TrackTrajectory & Trajectory() const
Access to the stored recob::TrackTrajectory.
recob::TrackFitHitInfo getTrackFitHitInfo()
get the recob::TrackFitHitInfo object, and reset the unique_ptr
bool isSpacePointSet()
check if the recob::SpacePoint unique_ptr is set
Declaration of signal hit object.
std::unique_ptr< recob::SpacePoint > spacePoint
process_name use argoneut_mc_hitfinder track
std::unique_ptr< std::vector< recob::TrackFitHitInfo > > outTrackFitHitInfos
std::unique_ptr< recob::TrackFitHitInfo > trackFitHitInfo
virtual bool makeTrack(const detinfo::DetectorPropertiesData &detProp, 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
Base abstract class for tools used to fit tracks.
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
size_t NPoints() const
Returns the number of stored trajectory points.
A trajectory in space reconstructed from hits.
Object storing per-hit information from a track fit.
Struct holding point-by-point elements used in OptionalOutputs.
void setSpacePoint(const recob::SpacePoint &aSpacePoint)
virtual bool makeTrack(const detinfo::DetectorPropertiesData &detProp, 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...
Data product for reconstructed trajectory in space.
std::vector< PointFlags_t > Flags_t
Type of point flag list.
void addPoint(OptionalPointElement &ope, art::Ptr< recob::Hit > hptr)
add one OptionalPointElement and the corresponding hit
Set of flags pertaining a point of the track.
Provides recob::Track data product.
std::unique_ptr< std::vector< SpHitPair > > outSpacePointHitPairs
std::vector< SpHitPair > spacePointHitPairs()
get the output vector of SpHitPair by releasing and moving
void reset()
reset the stored vectors
A trajectory in space reconstructed from hits.
virtual void initEvent(const art::Event &e)
per-event initialization; concrete classes may override this function to retrieve other products or a...
recob::SpacePoint getSpacePoint()
get the recob::SpacePoint object, and release the unique_ptr
std::vector< recob::TrackFitHitInfo > trackFitHitInfos()
get the output vector of TrackFitHitInfos by releasing and moving
std::pair< recob::SpacePoint, art::Ptr< recob::Hit > > SpHitPair
void addPoint(OptionalPointElement &ope)
add one OptionalPointElement
bool isTrackFitInfosInit()
check initialization of the output vector of TrackFitHitInfos
void setSpacePoint(recob::SpacePoint &&aSpacePoint)
set the recob::SpacePoint unique_ptr
void setTrackFitHitInfo(recob::TrackFitHitInfo &&aTrackFitHitInfo)
set the recob::TrackFitHitInfo unique_ptr
virtual ~TrackMaker() noexcept=default
virtual bool makeTrack(const detinfo::DetectorPropertiesData &detProp, 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
void initSpacePoints()
initialize the output vector of SpHitPair
Struct holding optional TrackMaker outputs.
Track from a non-cascading particle.A recob::Track consists of a recob::TrackTrajectory, plus additional members relevant for a "fitted" track:
bool isSpacePointsInit()
check initialization of the output vector of SpHitPair