18 #ifndef PIDVARIABLES_H_
19 #define PIDVARIABLES_H_ 1
23 #include <LCIOSTLTypes.h>
24 #include "EVENT/Cluster.h"
25 #include "EVENT/Track.h"
26 #include "EVENT/ReconstructedParticle.h"
32 using EVENT::FloatVec;
70 virtual int Update(EVENT::ReconstructedParticle*);
71 virtual int Update(
const EVENT::ClusterVec cluvec,
const EVENT::TrackVec trax,
const TVector3 p3) = 0;
94 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
104 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
114 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
123 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
131 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
139 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
147 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
160 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
176 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p3);
200 typedef std::vector<PIDVariable_base*>
VarVec;
206 virtual int Update(EVENT::ReconstructedParticle*);
207 virtual int Update(
const EVENT::ClusterVec,
const EVENT::TrackVec,
const TVector3 p);
242 virtual int Update(EVENT::ReconstructedParticle*);
259 #endif // PIDVARIABLES_H_
virtual void Populate()=0
const PIDParticles::PIDParticle_base * _hypothesis
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
const VarVec * GetVariables() const
const PIDParticles::PIDParticle_base * _hypothesis
virtual void SetOutOfRange()
const char * Description() const
virtual int Update(EVENT::ReconstructedParticle *)
const char * AxisTitle() const
PIDVariable_base(const char *name, const char *description, const char *unit)
static double BetheBloch(const PIDParticles::PIDParticle_base *hypothesis, const float p)
std::map< particleType, PIDParticle_base > ParticleMap
const char * Name() const
virtual void SetOutOfRange()
PID_dEdxLogChi2 & operator=(const PID_dEdxLogChi2 &)=delete
virtual void SetOutOfRange()
std::vector< PIDVariable_base * > VarVec
virtual void SetOutOfRange()
virtual ~PIDVariable_base()
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
FloatVec * GetMvaVariables()
static TRandom3 * varRand
const char * _description
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
virtual ~PIDVariables_LLPID()
static const short MASK_EmptyShapes
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
virtual void SetOutOfRange()=0
static const float caloCut
static const short MASK_ZerodEdx
virtual void SetOutOfRange()
virtual ~PIDVariables_MvaPid()
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
const float * Address() const
virtual void SetOutOfRange()
PIDVariable_base & operator=(const PIDVariable_base &)=delete
virtual int Update(EVENT::ReconstructedParticle *)
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
virtual void SetOutOfRange()
static const short MASK_InvalidMomentum
PIDParticles::ParticleMap ParticleMap
virtual void SetOutOfRange()
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
virtual int Update(const EVENT::ClusterVec, const EVENT::TrackVec, const TVector3 p3)
virtual ~PIDVariables_base()=0
PID_dEdxLogChi2(const PID_dEdxLogChi2 &)
PIDVariable_base(const PIDVariable_base &)=delete
PID_dEdxChi2 & operator=(const PID_dEdxChi2 &)=delete
virtual int Update(EVENT::ReconstructedParticle *)
virtual void SetOutOfRange()
virtual void SetOutOfRange()
const char * Unit() const
PID_dEdxChi2(const PID_dEdxChi2 &)
virtual void SetOutOfRange()
static const float muSysCut
static const short MASK_EmptyClusters
static const short MASK_EmptyTracks