1#ifndef ParticleID_ParticleIDBase_H
2#define ParticleID_ParticleIDBase_H
18#include "DstEvtRecTracks.h"
31 virtual double chi(
int n)
const = 0;
32 virtual double prob(
int n)
const = 0;
33 virtual int ndof()
const = 0;
43 void setRunNo(
const double runh = 8093) {m_runno = runh;}
57 double pol2(
double x,
double* par);
58 double pol3(
double x,
double* par);
59 double pol4(
double x,
double* par);
78 int all()
const {
return (IDENTIFY_ELECTRON | IDENTIFY_PION | IDENTIFY_KAON | IDENTIFY_PROTON);}
103 void set_path(
const char* s_path = 0);
116 double m_pdfsigmamin_cut;
117 static const int USE_DEDX;
118 static const int USE_TOF1;
119 static const int USE_TOF2;
120 static const int USE_TOF;
121 static const int USE_TOFE;
122 static const int USE_TOFQ;
123 static const int USE_TOFC;
124 static const int USE_TOFCorr;
125 static const int USE_EMC;
126 static const int USE_MUC;
128 static const int IDENTIFY_ELECTRON;
129 static const int IDENTIFY_MUON;
130 static const int IDENTIFY_PION;
131 static const int IDENTIFY_KAON;
132 static const int IDENTIFY_PROTON;
134 static const int PROBABILITY_PID;
135 static const int LIKELIHOOD_PID;
136 static const int NEURONNETWORK_PID;
138 static const int DEDX_VALID;
139 static const int TOF_VALID;
140 static const int TOF1_VALID;
141 static const int TOF2_VALID;
142 static const int TOFE_VALID;
143 static const int TOFQ_VALID;
144 static const int TOFC_VALID;
145 static const int TOFCorr_VALID;
146 static const int EMC_VALID;
147 static const int MUC_VALID;
double pol2(double x, double *par)
virtual int ndof() const =0
double interpolation(double *x, double *y, double x1)
void setPdfMinSigmaCut(const double pdf=4)
EvtRecTrack * PidTrk() const
double probCalculate(double chi2, int n)
int onlyPionKaonElectron() const
virtual double chi(int n) const =0
double pol4(double x, double *par)
int methodProbability() const
double pol3(double x, double *par)
double pdfCalculate(double offset, double sigma)
virtual int LikelihoodCalculation()=0
void setRunNo(const double runh=8093)
double pdfMinSigmaCut() const
int onlyPionKaonProton() const
virtual int particleIDCalculation()=0
virtual void calculate()=0
int methodNeuronNetwork() const
void setChiMinCut(const double chi=4)
virtual bool IsPidInfoValid() const =0
int methodLikelihood() const
virtual double prob(int n) const =0
void setRecTrack(EvtRecTrack *trk)
virtual ~ParticleIDBase()
void set_path(const char *s_path=0)