CMS 3D CMS Logo

PATMHTProducer.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: PATMHTProducer
4 // Class: PATMHTProducer
5 //
13 //
14 // Original Author: Xin Shi & Freya Blekman, Cornell University
15 // Created: Fri Sep 12 17:58:29 CEST 2008
16 //
17 //
18 
19 #ifndef PhysicsTools_PatAlgos_PATMHTProducer_h
20 #define PhysicsTools_PatAlgos_PATMHTProducer_h
21 
22 
23 
24 // system include files
25 #include <memory>
26 
27 // user include files
28 
33 
35 
39 
40 
50 
51 
55 
56 #include "TF1.h"
57 #include "TMath.h"
58 
59 //
60 // class declaration
61 //
62 
63 namespace pat {
65  public:
66  explicit PATMHTProducer(const edm::ParameterSet&);
68 
69  private:
70  virtual void produce(edm::Event&, const edm::EventSetup&) override;
71 
72  double getJets(edm::Event&, const edm::EventSetup&);
73  double getElectrons(edm::Event&, const edm::EventSetup&);
74  double getMuons(edm::Event&, const edm::EventSetup&);
75  void getTowers(edm::Event&, const edm::EventSetup&);
76 
77 
78  // ----------member data ---------------------------
79 
80  double verbose_;
81 
82  // input tags.
89 
90  std::vector<metsig::SigInputObj> physobjvector_ ;
91 
92  double uncertaintyScaleFactor_; // scale factor for the uncertainty parameters.
93  bool controlledUncertainty_; // use controlled uncertainty parameters.
94 
95 
96  //--- test the uncertainty parameters ---//
97 
99  public:
100  std::unique_ptr<TF1> etUncertainty;
101  std::unique_ptr<TF1> phiUncertainty;
102  };
103 
104  void setUncertaintyParameters();// fills the following uncertaintyFunctions objects:
111 
117 
118  //--- tags and parameters ---//
119 
121  bool useJets_;
123  bool useMuons_;
124  std::set<CaloTowerDetId> s_clusteredTowers;
125 
126  bool noHF_;
127 
128  double jetPtMin_;
129  double jetEtaMax_;
131 
132  double elePtMin_;
133  double eleEtaMax_;
134 
135  double muonPtMin_;
136  double muonEtaMax_;
140  double muonDPtMax_;
142 
143  // double uncertaintyScaleFactor_; // scale factor for the uncertainty parameters.
144 
148 
152 
155 
158 
167 
168  //--- For Muon Calo Deposits ---//
169  //TrackDetectorAssociator trackAssociator_;
170  //TrackAssociatorParameters trackAssociatorParameters_;
171 
173  bool useHO_ ;
174 
175 
176  };
177  //define this as a plug-in
178 
179 } //end of namespace
180 
181 #endif
edm::EDGetTokenT< edm::View< pat::Photon > > phoToken_
double eleEtUncertaintyParameter0_
uncertaintyFunctions hcalHEUncertainty
edm::InputTag CorJetAlgorithmTag_
double getJets(edm::Event &, const edm::EventSetup &)
double muonPhiUncertaintyParameter0_
edm::EDGetTokenT< edm::View< pat::Muon > > muoToken_
uncertaintyFunctions muonUncertainty
uncertaintyFunctions ecalEEUncertainty
uncertaintyFunctions jetUncertainty
double jetEtUncertaintyParameter1_
double elePhiUncertaintyParameter0_
double jetEtUncertaintyParameter2_
double jetPhiUncertaintyParameter2_
uncertaintyFunctions hcalHBUncertainty
Definition: HeavyIon.h:7
double getMuons(edm::Event &, const edm::EventSetup &)
edm::InputTag mhtLabel_
edm::EDGetTokenT< edm::View< pat::Tau > > tauToken_
double muonEtUncertaintyParameter0_
PATMHTProducer(const edm::ParameterSet &)
std::string metCollectionLabel_
edm::InputTag CaloJetAlgorithmTag_
uncertaintyFunctions muonCorrUncertainty
double getElectrons(edm::Event &, const edm::EventSetup &)
std::string significanceLabel_
uncertaintyFunctions hcalHFUncertainty
std::vector< metsig::SigInputObj > physobjvector_
void getTowers(edm::Event &, const edm::EventSetup &)
edm::EDGetTokenT< edm::View< pat::Electron > > eleToken_
std::string JetCorrectionService_
edm::InputTag ElectronTag_
double uncertaintyScaleFactor_
edm::InputTag MuonTag_
edm::InputTag CaloTowerTag_
double jetPhiUncertaintyParameter1_
virtual void produce(edm::Event &, const edm::EventSetup &) override
double jetPhiUncertaintyParameter0_
edm::EDGetTokenT< edm::View< pat::Jet > > jetToken_
uncertaintyFunctions jetCorrUncertainty
uncertaintyFunctions ecalEBUncertainty
double jetEtUncertaintyParameter0_
uncertaintyFunctions hcalHOUncertainty
uncertaintyFunctions eleUncertainty
std::set< CaloTowerDetId > s_clusteredTowers