1#ifndef ParticleID_ParticleID_H
2#define ParticleID_ParticleID_H
89 void setNhitCut(
const int nhitcuth = 5) {m_nhitcut = nhitcuth;}
94 void setMethod(
const int method) {m_method = (m_method | method);}
97 void usePidSys(
const int pidsys) {m_pidsys = (m_pidsys | pidsys);}
103 void identify(
const int pidcase) {m_pidcase = (m_pidcase | pidcase);}
113 double chi(
int n)
const {
return m_chisq[
n];}
114 double prob(
int n)
const {
return m_prob[
n];}
115 int ndof()
const {
return m_ndof;}
118 double pdf(
int n)
const {
return m_pdf[
n];}
119 double lhf(
int n)
const {
return m_likelihoodfraction[
n];}
146 if(
lhf(0)>0.02)
return 1.0;
147 if(
lhf(1)>0.02)
return 8.5;
148 if(
lhf(2)>0.02)
return 2.0;
149 if(
lhf(3)>0.02)
return 4.0;
150 if(
lhf(4)>0.02)
return 5.0;
154 return m_tofcorrpid->
offset(i);
157 return m_tofcorrpid->
sigma(i);
168 bool IsDedxInfoUsed()
const {
return ((m_pidsys &
useDedx()) ==
useDedx());}
169 bool IsTofInfoUsed()
const {
return ((m_pidsys &
useTof()) ==
useTof());}
170 bool IsTof1InfoUsed()
const {
return ((m_pidsys &
useTof1()) ==
useTof1());}
171 bool IsTof2InfoUsed()
const {
return ((m_pidsys &
useTof2()) ==
useTof2());}
172 bool IsTofEInfoUsed()
const {
return ((m_pidsys &
useTofE()) ==
useTofE());}
173 bool IsTofQInfoUsed()
const {
return ((m_pidsys &
useTofQ()) ==
useTofQ());}
174 bool IsTofCInfoUsed()
const {
return ((m_pidsys &
useTofC()) ==
useTofC());}
176 bool IsEmcInfoUsed()
const {
return ((m_pidsys &
useEmc()) ==
useEmc());}
177 bool IsMucInfoUsed()
const {
return ((m_pidsys &
useMuc()) ==
useMuc());}
193 double m_likelihoodfraction[5];
194 double m_TotalLikelihood;
213#include "ParticleID/ParticleID.icc"
double chiMuc(int n) const
int neuronPIDCalculation()
void setMethod(const int method)
double probEmc(int n) const
double probTof(int n) const
double chiTof2(int n) const
bool IsTofEInfoValid() const
bool IsEmcInfoValid() const
int LikelihoodCalculation()
double chiTofE(int n) const
double probTofCorr(int n) const
bool IsTofCorrInfoValid() const
bool IsTofCInfoValid() const
bool IsTofInfoValid() const
void identify(const int pidcase)
double probElectron() const
void usePidSys(const int pidsys)
void setNhitCut(const int nhitcuth=5)
double chiTofQ(int n) const
double probTofC(int n) const
bool IsTofQInfoValid() const
int particleIDCalculation()
static ParticleID * instance()
double probTofQ(int n) const
bool IsPidInfoValid() const
bool IsDedxInfoValid() const
double probDedx(int n) const
double chiTofC(int n) const
double chiTof1(int n) const
double chiEmc(int n) const
double probProton() const
bool IsMucInfoValid() const
double pdfElectron() const
double chiTof(int n) const
double probTofE(int n) const
double chiTofCorr(int n) const
double probMuc(int n) const
double chiDedx(int n) const
double sigma(int n) const
double offset(int n) const