1 |
#ifndef SIMPLE_LEPTON
|
2 |
#define SIMPLE_LEPTON
|
3 |
|
4 |
#include <iostream>
|
5 |
#include "TROOT.h"
|
6 |
#include "TLorentzVector.h"
|
7 |
#include "SelectionStatus.h"
|
8 |
|
9 |
class SimpleLepton {
|
10 |
public :
|
11 |
|
12 |
SimpleLepton() {
|
13 |
// vec = new TLorentzVector();
|
14 |
// vecorig = new TLorentzVector();
|
15 |
}
|
16 |
|
17 |
~SimpleLepton() {
|
18 |
// vec->Delete();
|
19 |
// vecorig->Delete();
|
20 |
// delete(vec);
|
21 |
// delete(vecorig);
|
22 |
};
|
23 |
|
24 |
int type, index, charge;
|
25 |
double isoTrk, isoEcal, isoHcal, isoPF03, isoPF04, isoCombo;
|
26 |
double chisoPF04, gaisoPF04, neisoPF04;
|
27 |
|
28 |
double ip3dSig;
|
29 |
unsigned bdtfail;
|
30 |
bool is4l, isEB, isTight, isLoose;
|
31 |
bool tightCutsApplied;
|
32 |
TLorentzVector vec;
|
33 |
|
34 |
double idMVA, isoMVA;
|
35 |
|
36 |
unsigned scID;
|
37 |
|
38 |
SelectionStatus status;
|
39 |
|
40 |
inline void print() { std::cout <<
|
41 |
"type: " << type << "\t"
|
42 |
"pt: " << vec.Pt() << "\t"
|
43 |
"eta: " << vec.Eta() << std::endl;
|
44 |
}
|
45 |
static bool lep_pt_sort( const SimpleLepton &l1, const SimpleLepton &l2 ) {
|
46 |
if( l1.vec.Pt() > l2.vec.Pt() ) return true;
|
47 |
else return false;
|
48 |
};
|
49 |
|
50 |
};
|
51 |
|
52 |
#endif
|