Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-10-25 09:58:32

0001 #ifndef PhysicsTools_TagAndProbe_TriggerCandProducer_h
0002 #define PhysicsTools_TagAndProbe_TriggerCandProducer_h
0003 
0004 // system include files
0005 #include <memory>
0006 
0007 // user include files
0008 #include "FWCore/Framework/interface/Frameworkfwd.h"
0009 #include "FWCore/Framework/interface/stream/EDProducer.h"
0010 #include "FWCore/Framework/interface/Event.h"
0011 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0012 #include "DataFormats/Candidate/interface/ShallowCloneCandidate.h"
0013 #include "HLTrigger/HLTcore/interface/HLTPrescaleProvider.h"
0014 #include "PhysicsTools/TagAndProbe/interface/TriggerCandProducer.h"
0015 
0016 #include "DataFormats/HLTReco/interface/TriggerObject.h"
0017 #include "DataFormats/Common/interface/TriggerResults.h"
0018 #include "DataFormats/HLTReco/interface/TriggerEvent.h"
0019 #include "FWCore/Common/interface/TriggerNames.h"
0020 
0021 // forward declarations
0022 template <class object>
0023 class TriggerCandProducer : public edm::stream::EDProducer<> {
0024 public:
0025   explicit TriggerCandProducer(const edm::ParameterSet&);
0026   ~TriggerCandProducer() override;
0027 
0028 private:
0029   void beginRun(edm::Run const& iRun, edm::EventSetup const& iSetup) override;
0030   void produce(edm::Event&, const edm::EventSetup&) override;
0031 
0032   // ----------member data --------------------------
0033 
0034   edm::InputTag _inputProducer;
0035   edm::EDGetTokenT<edm::View<object> > _inputProducerToken;
0036   edm::InputTag triggerEventTag_;
0037   edm::EDGetTokenT<trigger::TriggerEvent> triggerEventToken_;
0038   edm::InputTag triggerResultsTag_;
0039   edm::EDGetTokenT<edm::TriggerResults> triggerResultsToken_;
0040   std::vector<edm::InputTag> hltTags_;
0041   edm::InputTag theRightHLTTag_;
0042   double delRMatchingCut_;
0043   double objEtMin_;
0044   double objEtaMax_;
0045   std::string filterName_;
0046   bool storeRefCollection_;
0047   bool antiSelect_;
0048   bool isTriggerOR_;
0049   bool isFilter_;
0050   bool noHltFiring_;
0051   bool printIndex_;
0052   bool changed_;
0053   HLTPrescaleProvider hltPrescaleProvider_;
0054   bool skipEvent_;
0055   bool matchUnprescaledTriggerOnly_;
0056 };
0057 #include "PhysicsTools/TagAndProbe/interface/TriggerCandProducer.icc"
0058 #endif