00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef StHbtAihongPid_h
00016 #define StHbtAihongPid_h
00017
00018 #ifdef __ROOT__
00019 #include "StChain.h"
00020 #endif
00021
00022 class StuProbabilityPidAlgorithm;
00023
00024
00025 class StHbtAihongPid {
00026 public:
00027 static StHbtAihongPid* Instance(const char* fileName="PIDTable.root");
00028 void setPidTable(const char* fileName);
00029 void updateEvent(int refMult);
00030 void updateTrack(int charge, double p, double eta, int nHitsDedx, double dedx);
00031 StuProbabilityPidAlgorithm* aihongPid(int refMult, int charge, double p, double eta, int nHitsDedx, double dedx);
00032 StuProbabilityPidAlgorithm* aihongPid(int charge, double p, double eta, int nHitsDedx, double dedx);
00033 StuProbabilityPidAlgorithm* aihongPid();
00034
00035 friend class nobody;
00036 protected:
00037 StHbtAihongPid(const char* fileName);
00038 virtual ~StHbtAihongPid() { }
00039 private:
00040 static StHbtAihongPid* _instance;
00041 StuProbabilityPidAlgorithm* mAihongPid;
00042 double mAihongCentrality;
00043
00044 #ifdef __ROOT__
00045 ClassDef(StHbtAihongPid,0)
00046 #endif
00047 };
00048
00049 #endif
00050