13#ifndef TTrackBase_FLAG_
14#define TTrackBase_FLAG_
16#ifdef TRKRECO_DEBUG_DETAIL
22#define TrackAxialLayer 0
23#define TrackStereoLayer 1
24#define TrackBothLayer 2
35#define HEP_SHORT_NAMES
36#include "CLHEP/Alist/AList.h"
63 virtual unsigned type(
void)
const;
66 virtual void dump(
const std::string & message = std::string(
""),
67 const std::string & prefix = std::string(
""))
const;
74 unsigned nLinks(
unsigned mask = 0)
const;
80 unsigned nCores(
unsigned mask = 0)
const;
108 virtual void refine(
double maxSigma);
125 virtual int fit(
void);
144 unsigned nHeps(
void)
const;
168 mutable bool _updated;
175 mutable unsigned _nHeps;
193#ifdef TTrackBase_NO_INLINE
197#define TTrackBase_INLINE_DEFINE_HERE
200#ifdef TTrackBase_INLINE_DEFINE_HERE
A class to fit a TTrackBase object to a helix.
A class to fit a TTrackBase object to a helix.
A class to fit a TTrackBase object.
A class to relate TMDCWireHit and TTrack objects.
A virtual class for a track class in tracking.
virtual int approach(TMLink &) const
calculates the closest approach to a wire in real space. Results are stored in TMLink....
virtual double distance(const TMLink &) const
returns distance to a position of TMLink in TMLink space.
virtual int fit(void)
fits itself by a default fitter. Error was happened if return value is not zero.
virtual void dump(const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
dumps debug information.
virtual void refine(AList< TMLink > &list, double maxSigma)
removes bad points by pull. The bad points are removed from the track, and are returned in 'list'.
bool fitted(void) const
returns true if fitted.
virtual void removeLinks(void)
bool fittedWithCathode(void) const
returns true if fitted with cathode hits(TEMPORARY).
void appendByDistance(AList< TMLink > &list, double maxDistance)
appends TMLinks by distance. 'list' is an input. Unappended TMLinks will be removed from 'list' when ...
unsigned testByApproach(const TMLink &list, double sigma) const
returns # of good hits to be appended.
const TTrackMC *const mc(void) const
returns a pointer to TTrackMC.
unsigned nHeps(void) const
returns # of contributed TTrackHEP tracks.
void append(TMLink &)
appends a TMLink.
const AList< TMLink > & links(unsigned mask=0) const
returns a list of masked TMLinks assigned to this track. 'mask' will be applied if mask is not 0.
const TMFitter *const fitter(void) const
returns a pointer to a default fitter.
virtual unsigned type(void) const
returns type. Definition is depending on an object class.
void remove(TMLink &a)
removes a TMLink.
const TTrackHEP *const hep(void) const
returns TTrackHEP.
unsigned nCores(unsigned mask=0) const
returns # of masked TMLinks for fit. 'mask' will be applied if mask is not 0.
void appendByApproach(AList< TMLink > &list, double maxSigma)
appends TMLinks by approach. 'list' is an input. Unappended TMLinks will be removed from 'list' when ...
TMLink * operator[](unsigned i) const
virtual ~TTrackBase()
Destructor.
virtual unsigned objectType(void) const
returns object type.
const AList< TMLink > & cores(unsigned mask=0) const
returns a list of masked TMLinks for fit. 'mask' will be applied if mask is not 0.
unsigned nLinks(unsigned mask=0) const
returns # of masked TMLinks assigned to this track object.
void update(void) const
update cache.
A class to represent a GEN_HEPEVT particle in tracking.
A class to have MC information of TTrack.