Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:18:30

0001 #ifndef HLTCaloTowerHtMhtProducer_h_
0002 #define HLTCaloTowerHtMhtProducer_h_
0003 
0004 /** \class HLTCaloTowerHtMhtProducer
0005  *
0006  *  \brief  This produces a reco::MET object that stores HT and MHT
0007  *  \author Steven Lowette
0008  *  \author Michele de Gruttola, Jia Fu Low (Nov 2013)
0009  *  \author Thiago Tomei (added the "HT from CaloTower code")
0010  *
0011  *  HT & MHT are calculated using input CaloTower collection.
0012  *  HT is stored as `sumet_`, MHT is stored as `p4_` in the output.
0013  *
0014  */
0015 
0016 #include "FWCore/Framework/interface/stream/EDProducer.h"
0017 #include "FWCore/Framework/interface/Event.h"
0018 #include "FWCore/Framework/interface/EventSetup.h"
0019 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0020 
0021 #include "DataFormats/METReco/interface/MET.h"
0022 #include "DataFormats/METReco/interface/METFwd.h"
0023 #include "DataFormats/CaloTowers/interface/CaloTower.h"
0024 #include "DataFormats/CaloTowers/interface/CaloTowerDefs.h"
0025 
0026 namespace edm {
0027   class ConfigurationDescriptions;
0028 }
0029 
0030 // Class declaration
0031 class HLTCaloTowerHtMhtProducer : public edm::stream::EDProducer<> {
0032 public:
0033   explicit HLTCaloTowerHtMhtProducer(const edm::ParameterSet& iConfig);
0034   ~HLTCaloTowerHtMhtProducer() override;
0035   static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0036   void produce(edm::Event& iEvent, const edm::EventSetup& iSetup) override;
0037 
0038 private:
0039   /// Use pt; otherwise, use et.
0040   bool usePt_;
0041 
0042   /// Minimum pt requirement for jets
0043   double minPtTowerHt_;
0044   double minPtTowerMht_;
0045 
0046   /// Maximum (abs) eta requirement for jets
0047   double maxEtaTowerHt_;
0048   double maxEtaTowerMht_;
0049 
0050   /// Input CaloTower collection
0051   edm::InputTag towersLabel_;
0052   edm::EDGetTokenT<CaloTowerCollection> m_theTowersToken;
0053 };
0054 
0055 #endif  // HLTCaloTowerHtMhtProducer_h_