Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FilterEvents.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file FilterEvents.h
1 
2 #ifndef __FILTEREVENTS_H__
3 #define __FILTEREVENTS_H__
4 
5 #include <fun4all/SubsysReco.h>
6 
7 #include <TVector3.h>
8 
9 class SvtxTrack;
10 class SvtxTrackMap;
11 class SvtxVertexMap_v1;
12 class GlobalVertexMap;
13 class RawCluster;
15 class TrackSeedContainer;
17 
18 class FilterEvents: public SubsysReco {
19 
20 public:
21 
22  FilterEvents(const std::string &name = "FilterEvents");
23  virtual ~FilterEvents() {}
24 
25  int Init(PHCompositeNode *topNode);
26  int InitRun(PHCompositeNode *topNode);
27  int process_event(PHCompositeNode *topNode);
28  int End(PHCompositeNode *topNode);
29 
30  void get_dca(SvtxTrack* track, SvtxVertexMap_v1* vertexmap,
31  double& DCA, double& DCAxy);
32  void get_dca_SvtxEval(SvtxTrack* track, SvtxVertexMap_v1* vertexmap,
33  double& dca3dxy, double& dca3dz,
34  double& dca3dxysigma, double& dca3dzsigma);
35  void setCuts(double ptCut, double dcaCut, double chi2ndofCut, bool CEMCuse){
36  pt_cut = ptCut;
37  dca_cut = dcaCut;
38  chi2ndof_cut = chi2ndofCut;
39  CEMC_use = CEMCuse;
40  };
41 
42 protected:
43 
44  int GetNodes(PHCompositeNode *topNode);
45  TVector3 GetProjectionCEMC(SvtxTrack* track);
46  RawCluster* MatchClusterCEMC(SvtxTrack* track, RawClusterContainer* cemc_clusters, double &dphi, double &deta, double Zvtx);
47 
51  //GlobalVertexMap* _global_vtxmap;
57 
60 
63 
66 
67  double pt_cut;
68  double dca_cut;
69  double chi2ndof_cut;
70 
71  bool CEMC_use;
72 };
73 
74 #endif
75