LCFIPlus  0.6.5
process.h
Go to the documentation of this file.
1 // process.h
2 
3 #ifndef process_h
4 #define process_h 1
5 
6 #include "lcfiplus.h"
7 #include "VertexFinderSuehara.h"
8 
9 #include "TMVA/Reader.h"
10 
11 namespace lcfiplus {
12 struct TrackSelectorConfig;
13 
15  public:
17  virtual ~PrimaryVertexFinder() {}
18 
19  void init(Parameters* param);
20  void process();
21  void end();
22 
24 
25  private:
26  vector<Vertex*>* _vertex;
27 
28  // parameters
29  double _chi2th;
30  bool _beamspotConstraint;
31  bool _beamspotSmearing;
32 
33  // track cut parameters
34  TrackSelectorConfig* _secVtxCfg;
35 };
36 
37 class BuildUpVertex : public Algorithm {
38  public:
39  BuildUpVertex() : _vertices(0) {}
40  virtual ~BuildUpVertex() {}
41 
42  void init(Parameters* param);
43  void process();
44  void end();
45 
47 
48  private:
49  std::vector<Vertex*>* _vertices;
50  std::vector<Vertex*>* _v0vertices;
51 
52  // parameters
53  std::string _primvtxcolname;
54 
55  // vertex formation limits
56  double _chi2thpri;
57  double _chi2thsec;
58  double _massth;
59  double _posth;
60  double _chi2orderinglimit;
61  int _v0sel;
62 
63  // association parameters
64  bool _doassoc;
65  double _minimumdist;
66  double _chi2ratio;
67 
68  // track cut parameters
69  TrackSelectorConfig* _secVtxCfg;
70 
71  //AVF parameters
72  bool _avf; //flag AVF/chi2
73  double _temperature; //AVF parameter
74 
75 };
76 
77 class JetClustering : public Algorithm {
78  public:
80  virtual ~JetClustering() {}
81 
82  void init(Parameters* param);
83  void process();
84  void end();
85 
87 
88  private:
89  VertexVec* _vertices;
90  map<double, vector<Jet*> * > _jetsmap;
91  map<double, vector<Vertex*> * > _jetvtxmap;
92  vector<int> _njets;
93  vector<double> _ycut;
94  string _algo;
95  int _useBeamJets;
96  double _rParameter;
97  double _alphaParameter;
98  double _betaParameter;
99  bool _useMuonID;
100  bool _muonIDExternal;
101  double _muonIDMinEnergy;
102  double _muonIDMinD0Sig;
103  double _muonIDMinZ0Sig;
104  double _muonIDMaxDist;
105  double _muonIDMinProb;
106 
107  double _vsMinDist;
108  double _vsMaxDist;
109  double _vsK0MassWidth;
110  bool _outputVertexStoresVertex;
111  string _vcolname;
112  int _maxYth;
113 
114  double _yaddVV;
115  double _yaddVL;
116  double _yaddLL;
117 };
118 
119 class JetVertexRefiner : public Algorithm {
120  public:
122  virtual ~JetVertexRefiner() {}
123 
124  void init(Parameters* param);
125  void process();
126  void end();
127 
129 
130  private:
131  VertexVec* _invertices;
132  VertexVec* _v0vertices;
133  vector<Vertex*>* _outvertices;
134 
135  JetVec* _inputJets;
136  vector<Jet*>* _outputJets;
137 
139  double _oneVtxProbTh;
140  double _maxCharmFlightLengthPerJetEnergy;
141 
142  string _jincolname;
143  string _vincolname;
144  string _vv0colname;
145  string _vprimcolname;
146 
147  //BNess tagger
148  TMVA::Reader *_bness;
149  float _var[8];
150  string _bnessbookname;
151  string _bnessbookname1;
152 
153 };
154 
155 }
156 
157 #endif
Definition: process.h:119
void init(Parameters *param)
Definition: process.cc:29
void init(Parameters *param)
Definition: process.cc:92
void end()
Definition: process.cc:87
JetClustering()
Definition: process.h:79
void end()
Definition: process.cc:457
void init(Parameters *param)
Definition: process.cc:463
ClassDef(JetClustering, 1)
ClassDef(BuildUpVertex, 1)
virtual ~BuildUpVertex()
Definition: process.h:40
ClassDef(PrimaryVertexFinder, 1)
JetVertexRefiner()
Definition: process.h:121
void end()
Definition: process.cc:201
Definition: lcfiplus.h:269
Definition: process.h:77
void end()
Definition: process.cc:729
Definition: lcfiplus.h:152
void process()
Definition: process.cc:521
PrimaryVertexFinder()
Definition: process.h:16
void process()
Definition: process.cc:64
Definition: process.h:14
Definition: process.h:37
const vector< const Jet * > JetVec
Definition: lcfiplus.h:80
void process()
Definition: process.cc:284
virtual ~JetVertexRefiner()
Definition: process.h:122
void init(Parameters *param)
Definition: process.cc:205
void process()
Definition: process.cc:144
BuildUpVertex()
Definition: process.h:39
virtual ~JetClustering()
Definition: process.h:80
Definition: TrackSelector.h:15
ClassDef(JetVertexRefiner, 1)
virtual ~PrimaryVertexFinder()
Definition: process.h:17
const vector< const Vertex * > VertexVec
Definition: lcfiplus.h:79