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 // system include files
23 #include <memory>
24 
25 // user include files
26 
31 
33 
37 
47 
51 
52 #include "TF1.h"
53 #include "TMath.h"
54 
55 //
56 // class declaration
57 //
58 
59 namespace pat {
61  public:
62  explicit PATMHTProducer(const edm::ParameterSet&);
63  ~PATMHTProducer() override;
64 
65  private:
66  void produce(edm::Event&, const edm::EventSetup&) override;
67 
68  double getJets(edm::Event&, const edm::EventSetup&);
69  double getElectrons(edm::Event&, const edm::EventSetup&);
70  double getMuons(edm::Event&, const edm::EventSetup&);
71  void getTowers(edm::Event&, const edm::EventSetup&);
72 
73  // ----------member data ---------------------------
74 
75  double verbose_;
76 
77  // input tags.
84 
85  std::vector<metsig::SigInputObj> physobjvector_;
86 
87  double uncertaintyScaleFactor_; // scale factor for the uncertainty parameters.
88  bool controlledUncertainty_; // use controlled uncertainty parameters.
89 
90  //--- test the uncertainty parameters ---//
91 
93  public:
94  std::unique_ptr<TF1> etUncertainty;
95  std::unique_ptr<TF1> phiUncertainty;
96  };
97 
98  void setUncertaintyParameters(); // fills the following uncertaintyFunctions objects:
105 
111 
112  //--- tags and parameters ---//
113 
115  bool useJets_;
117  bool useMuons_;
118  std::set<CaloTowerDetId> s_clusteredTowers;
119 
120  bool noHF_;
121 
122  double jetPtMin_;
123  double jetEtaMax_;
125 
126  double elePtMin_;
127  double eleEtaMax_;
128 
129  double muonPtMin_;
130  double muonEtaMax_;
134  double muonDPtMax_;
136 
137  // double uncertaintyScaleFactor_; // scale factor for the uncertainty parameters.
138 
142 
146 
149 
152 
161 
162  //--- For Muon Calo Deposits ---//
163  //TrackDetectorAssociator trackAssociator_;
164  //TrackAssociatorParameters trackAssociatorParameters_;
165 
167  bool useHO_;
168  };
169  //define this as a plug-in
170 
171 } // namespace pat
172 
173 #endif
edm::EDGetTokenT< edm::View< pat::Photon > > phoToken_
double eleEtUncertaintyParameter0_
uncertaintyFunctions hcalHEUncertainty
edm::InputTag CorJetAlgorithmTag_
~PATMHTProducer() override
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_
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