1 #ifndef LIKELIHOODPID_hh
2 #define LIKELIHOODPID_hh 1
6 #include "TLorentzVector.h"
7 #include "EVENT/Cluster.h"
8 #include "EVENT/Track.h"
19 LikelihoodPID(std::string fname,
double *pars, std::vector<float> cost);
25 int Classification(TLorentzVector pp, EVENT::Track* trk, EVENT::ClusterVec& cluvec);
28 double getCorrEnergy(TLorentzVector pp, EVENT::Track* trk, EVENT::ClusterVec& cluvec);
39 double get_dEdxChi2(
int parttype, TVector3 p,
float hit,
double dEdx);
40 double get_dEdxFactor(
int parttype, TVector3 p,
float hit,
double dEdx);
46 double BetheBloch(
double x,
double mass,
double *pars);
48 int Class_electron(TLorentzVector pp, EVENT::Track* trk, EVENT::ClusterVec& cluvec);
49 int Class_muon(TLorentzVector pp, EVENT::Track* trk, EVENT::ClusterVec& cluvec);
50 int Class_hadron(TLorentzVector pp, EVENT::Track* trk, EVENT::ClusterVec& cluvec);
51 double getValue(
int type,
int valtype,
double value);
52 double getPenalty(
int ptype,
int hypothesis,
double p);
int Class_hadron(TLorentzVector pp, EVENT::Track *trk, EVENT::ClusterVec &cluvec)
double get_dEdxDist(int parttype)
void CalculateDeltaPosition(float charge, TVector3 p, const float *calpos)
int Class_muon(TLorentzVector pp, EVENT::Track *trk, EVENT::ClusterVec &cluvec)
int Class_electron(TLorentzVector pp, EVENT::Track *trk, EVENT::ClusterVec &cluvec)
double get_dEdxChi2(int parttype, TVector3 p, float hit, double dEdx)
double get_dEdxFactor(int parttype, TVector3 p, float hit, double dEdx)
void setBasicFlg(bool flg)
double getValue(int type, int valtype, double value)
void setdEdxFlg(bool flg)
void setShowerShapesFlg(bool flg)
double get_Norm(double dedx)
double getCorrEnergy(TLorentzVector pp, EVENT::Track *trk, EVENT::ClusterVec &cluvec)
int Classification(TLorentzVector pp, EVENT::Track *trk, EVENT::ClusterVec &cluvec)
double getPenalty(int ptype, int hypothesis, double p)
double BetheBloch(double x, double mass, double *pars)
LikelihoodPID & operator=(const LikelihoodPID &)=delete