Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PairMaker.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PairMaker.h
1 
2 #ifndef __PAIRMAKER_H__
3 #define __PAIRMAKER_H__
4 
5 #include <fun4all/SubsysReco.h>
6 
7 #include "sPHElectronv1.h"
8 
9 #include <vector>
10 
11 class TFile;
12 class TH1D;
13 class TRandom;
14 class SvtxTrack;
16 
17 
18 class PairMaker: public SubsysReco {
19 
20 public:
21 
22  PairMaker(const std::string &name = "PairMaker", const std::string &filename = "test.root");
23  virtual ~PairMaker() {}
24 
25  int Init(PHCompositeNode *topNode);
26  int InitRun(PHCompositeNode *topNode);
27  int process_event(PHCompositeNode *topNode);
28  int End(PHCompositeNode *topNode);
29 
30 protected:
31 
32  int process_event_test(PHCompositeNode *topNode);
33  int MakeMixedPairs(std::vector<sPHElectronv1> elepos, sPHElectronPairContainerv1* eePairs, unsigned int centbin);
34 
35  bool isElectron(SvtxTrack*);
36 
38  static const int NZ = 2;
39  static const int NCENT = 2;
40  std::vector<sPHElectronv1> _buffer[NZ][NCENT];
41  unsigned int _min_buffer_depth;
42  unsigned int _max_buffer_depth;
43  double _ZMAX;
44  double _ZMIN;
45  std::vector<double> _multbins;
46 
47  TRandom* _rng;
48 
50 
51 };
52 
53 #endif
54