1#ifndef ParticleID_ParticleID_H
2#define ParticleID_ParticleID_H
96 void setNhitCut(
const int nhitcuth = 5) {m_nhitcut = nhitcuth;}
101 void setMethod(
const int method) {m_method = (m_method | method);}
104 void usePidSys(
const int pidsys) {m_pidsys = (m_pidsys | pidsys);}
110 void identify(
const int pidcase) {m_pidcase = (m_pidcase | pidcase);}
120 double chi(
int n)
const {
return m_chisq[
n];}
121 double prob(
int n)
const {
return m_prob[
n];}
122 int ndof()
const {
return m_ndof;}
125 double pdf(
int n)
const {
return m_pdf[
n];}
126 double lhf(
int n)
const {
return m_likelihoodfraction[
n];}
153 if(
lhf(0)>0.02)
return 1.0;
154 if(
lhf(1)>0.02)
return 8.5;
155 if(
lhf(2)>0.02)
return 2.0;
156 if(
lhf(3)>0.02)
return 4.0;
157 if(
lhf(4)>0.02)
return 5.0;
161 return m_tofcorrpid->
offset(i);
164 return m_tofcorrpid->
sigma(i);
175 bool IsDedxInfoUsed()
const {
return ((m_pidsys &
useDedx()) ==
useDedx());}
176 bool IsTofInfoUsed()
const {
return ((m_pidsys &
useTof()) ==
useTof());}
177 bool IsTof1InfoUsed()
const {
return ((m_pidsys &
useTof1()) ==
useTof1());}
178 bool IsTof2InfoUsed()
const {
return ((m_pidsys &
useTof2()) ==
useTof2());}
179 bool IsTofEInfoUsed()
const {
return ((m_pidsys &
useTofE()) ==
useTofE());}
180 bool IsTofQInfoUsed()
const {
return ((m_pidsys &
useTofQ()) ==
useTofQ());}
181 bool IsTofCInfoUsed()
const {
return ((m_pidsys &
useTofC()) ==
useTofC());}
183 bool IsEmcInfoUsed()
const {
return ((m_pidsys &
useEmc()) ==
useEmc());}
184 bool IsMucInfoUsed()
const {
return ((m_pidsys &
useMuc()) ==
useMuc());}
185 bool IsMrpcInfoUsed()
const {
return ((m_pidsys &
useMrpc()) ==
useMrpc());}
203 double m_likelihoodfraction[5];
204 double m_TotalLikelihood;
223#include "ParticleID/ParticleID.icc"
double chiMuc(int n) const
int neuronPIDCalculation()
void setMethod(const int method)
double probEmc(int n) const
double chiMrpc(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 IsMrpcInfoValid() 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 probMrpc(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