1 |
fgolf |
1.1 |
#ifndef looperNew_H
|
2 |
|
|
#define looperNew_H
|
3 |
|
|
|
4 |
|
|
#include "TH1F.h"
|
5 |
|
|
#include "TH2F.h"
|
6 |
|
|
#include "CMS2.h"
|
7 |
|
|
|
8 |
|
|
typedef ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<float> > LorentzVector;
|
9 |
|
|
|
10 |
|
|
class looperNew {
|
11 |
|
|
public:
|
12 |
|
|
int ScanChain ( TChain* chain,
|
13 |
|
|
char *prefix = "",
|
14 |
|
|
bool useNewRF = false,
|
15 |
|
|
bool useNewTQ = false,
|
16 |
|
|
bool removeGT = false,
|
17 |
|
|
bool writeHighMET = false,
|
18 |
|
|
bool removeTransitionJets = false,
|
19 |
|
|
bool type1FwdJetCorr = false);
|
20 |
|
|
void BookHistos ( char *prefix );
|
21 |
|
|
bool isMuon ( int index );
|
22 |
|
|
bool isElectron ( int index );
|
23 |
|
|
bool isGoodTrackNew ( int index );
|
24 |
|
|
bool isGoodTrackOld ( int index );
|
25 |
|
|
void correctMETforMuon ( LorentzVector p4, int index );
|
26 |
|
|
void correctMETforPionOld ( int index );
|
27 |
|
|
void correctMETforPionNew ( int index );
|
28 |
|
|
void correctMETforForwardJet ( int index );
|
29 |
|
|
TH2F* getResponseFunctionNew ();
|
30 |
|
|
TH2F* getResponseFunctionOld ();
|
31 |
|
|
void getGhostTrackFlags();
|
32 |
|
|
float deltaPhi (float phi1,float phi2);
|
33 |
|
|
|
34 |
|
|
float tcmet_x;
|
35 |
|
|
float tcmet_y;
|
36 |
|
|
bool removeGhostTracks;
|
37 |
|
|
vector<int> isGhostTrack;
|
38 |
|
|
|
39 |
|
|
TH1F* htcmet;
|
40 |
|
|
TH1F* htcmetNew;
|
41 |
|
|
TH1F* hgenmet;
|
42 |
|
|
TH1F* hmet;
|
43 |
|
|
TH1F* hmumet;
|
44 |
|
|
TH1F* hdeltamumet;
|
45 |
|
|
TH1F* hdeltatcmet;
|
46 |
|
|
TH1F* hdeltatcmetNew;
|
47 |
|
|
TH1F* hdeltaphimumet;
|
48 |
|
|
TH1F* hdeltaphitcmet;
|
49 |
|
|
TH1F* hdeltaphitcmetNew;
|
50 |
|
|
TH2F* response_function;
|
51 |
|
|
};
|
52 |
|
|
|
53 |
|
|
#endif
|