File indexing completed on 2025-08-03 08:14:07
0001 #ifndef __RICHParticleID_H__
0002 #define __RICHParticleID_H__
0003
0004 #include <fun4all/SubsysReco.h>
0005 #include <math.h>
0006
0007 class TTree;
0008 class TFile;
0009 class TH1D;
0010
0011 class PHCompositeNode;
0012 class PHG4TruthInfoContainer;
0013 class PHG4Hit;
0014 class PHG4HitContainer;
0015 class SvtxTrackMap;
0016 class SvtxTrack;
0017
0018 class PidInfoContainer;
0019 class TrackProjectorPid;
0020 class SetupDualRICHAnalyzer;
0021 class PIDProbabilities;
0022
0023 class RICHParticleID : public SubsysReco
0024 {
0025
0026 public:
0027
0028 RICHParticleID(std::string richname, std::string tracksname);
0029
0030 int
0031 Init(PHCompositeNode*);
0032 int
0033 InitRun(PHCompositeNode*);
0034 int
0035 process_event(PHCompositeNode*);
0036 int
0037 End(PHCompositeNode*);
0038
0039
0040 void set_refractive_index( float newidx )
0041 {
0042 _refractive_index = newidx;
0043 return;
0044 }
0045
0046 private:
0047 void CreateNodes(PHCompositeNode *topNode);
0048
0049 bool _verbose;
0050
0051 int _ievent;
0052
0053
0054 std::string _detector;
0055
0056
0057 std::string _trackmap_name;
0058
0059
0060 std::string _richhits_name;
0061
0062
0063 std::string _pidinfo_node_name;
0064
0065
0066 float _refractive_index;
0067
0068
0069 PidInfoContainer* _pidinfos;
0070
0071
0072 TrackProjectorPid *_trackproj;
0073
0074
0075 SetupDualRICHAnalyzer *_acquire;
0076
0077
0078 PIDProbabilities *_particleid;
0079
0080
0081 float _radius;
0082
0083 };
0084
0085 #endif