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 ip3dSig;
|
27 |
unsigned bdtfail;
|
28 |
bool is4l, isEB, isTight, isLoose;
|
29 |
bool tightCutsApplied;
|
30 |
TLorentzVector vec;
|
31 |
|
32 |
float tche, tchp, csv, csvMva;
|
33 |
float FR;
|
34 |
|
35 |
unsigned scID;
|
36 |
|
37 |
SelectionStatus status;
|
38 |
|
39 |
inline void print() { std::cout <<
|
40 |
"type: " << type << "\t"
|
41 |
"pt: " << vec.Pt() << "\t"
|
42 |
"eta: " << vec.Eta() << std::endl;
|
43 |
}
|
44 |
static bool lep_pt_sort( const SimpleLepton &l1, const SimpleLepton &l2 ) {
|
45 |
if( l1.vec.Pt() > l2.vec.Pt() ) return true;
|
46 |
else return false;
|
47 |
};
|
48 |
|
49 |
};
|
50 |
|
51 |
#endif
|