ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitHzz4l/NonMCBackground/interface/SelectionEMU.h
Revision: 1.5
Committed: Fri Jul 6 15:01:28 2012 UTC (12 years, 10 months ago) by dkralph
Content type: text/plain
Branch: MAIN
CVS Tags: compiled, HEAD
Changes since 1.4: +1 -0 lines
Log Message:
*** empty log message ***

File Contents

# User Rev Content
1 dkralph 1.2 #ifndef SELECTION_EMU
2     #define SELECTION_EMU
3 khahn 1.1
4     // System headers
5     //
6     #include <vector> // STL vector class
7     #include <iostream> // standard I/O
8     #include <iomanip> // functions to format standard I/O
9     #include <fstream> // functions for file I/O
10     #include <string> // C++ string class
11     #include <sstream> // class for parsing strings
12     #include <assert.h>
13     #include <stdlib.h>
14     #include <getopt.h>
15     using namespace std;
16    
17     //
18     // ROOT headers
19     //
20     #include <TROOT.h> // access to gROOT, entry point to ROOT system
21     #include <TTree.h>
22     #include <TFile.h>
23     #include <TChain.h> //
24     #include <TBranch.h> // class to access branches in TTree
25     #include <TClonesArray.h> // ROOT array class
26     #include <TLorentzVector.h> // 4-vector class
27     #include <TVector3.h> // 3D vector class
28     #include <TH1D.h>
29    
30     //
31     // ntuple format headers
32     //
33 dkralph 1.2 #include "EventHeader.h"
34     #include "Electron.h"
35     #include "Muon.h"
36     #include "PFCandidate.h"
37     #include "PFCandidateCol.h"
38 khahn 1.1 #include "RunLumiRangeMap.h"
39 dkralph 1.4 #include "TriggerTable.h"
40     #include "TriggerObjectsTable.h"
41 khahn 1.1
42     #include "ParseArgs.h"
43 dkralph 1.4 #include "TriggerUtils.h"
44 khahn 1.1 #include "EventData.h"
45     #include "SelectionStatus.h"
46 dkralph 1.2 #include "ReferenceSelection.h"
47 dkralph 1.3 #include "SelectionFuncs.h"
48 dkralph 1.2
49     EventData
50     apply_HZZ4L_EMU_selection(ControlFlags &ctrl, // input control
51 dkralph 1.4 const mithep::EventHeader *info, // input event info
52     mithep::TriggerTable *hltTable,
53     mithep::Array<mithep::TriggerObject> *hltObjArr,
54     mithep::TriggerObjectsTable *fTrigObjs,
55     const mithep::Array<mithep::Vertex> * vtxArr ,
56     const mithep::Array<mithep::PFCandidate> *fPFCandidates,
57     const mithep::Array<mithep::PileupEnergyDensity> *puEnergyDensity,
58 dkralph 1.5 const mithep::DecayParticleCol *fConversions,
59 dkralph 1.4 const mithep::Array<mithep::Electron> *electronArr, // input electrons
60     SelectionStatus (*ElectronPreSelector)( ControlFlags &,
61     const mithep::Electron*,
62     const mithep::Vertex *),
63     SelectionStatus (*ElectronIDSelector)( ControlFlags &,
64     const mithep::Electron*,
65     const mithep::Vertex *),
66     SelectionStatus (*ElectronIsoSelector)( ControlFlags &,
67     const mithep::Electron*,
68     const mithep::Vertex *,
69     const mithep::Array<mithep::PFCandidate> *,
70     const mithep::Array<mithep::PileupEnergyDensity> *puEnergyDensity,
71 dkralph 1.2
72 dkralph 1.4 mithep::ElectronTools::EElectronEffectiveAreaTarget,
73     vector<const mithep::PFCandidate*>),
74     const mithep::Array<mithep::Muon> *muonArr, // input muons
75     SelectionStatus (*MuonPreSelector)( ControlFlags &,
76     const mithep::Muon*,
77     const mithep::Vertex *,
78     const mithep::Array<mithep::PFCandidate> *),
79     SelectionStatus (*MuonIDSelector)( ControlFlags &,
80     const mithep::Muon*,
81     // const mithep::Vertex *),
82     const mithep::Vertex *,
83     const mithep::Array<mithep::PFCandidate> *),
84     SelectionStatus (*MuonIsoSelector)( ControlFlags &,
85     const mithep::Muon*,
86     const mithep::Vertex * ,
87     const mithep::Array<mithep::PFCandidate> *,
88     const mithep::Array<mithep::PileupEnergyDensity> *,
89     mithep::MuonTools::EMuonEffectiveAreaTarget,
90     vector<const mithep::PFCandidate*>)
91     );
92 dkralph 1.2 bool has_ssof_lepton(ControlFlags &ctrl);
93 khahn 1.1
94     #endif