File indexing completed on 2024-04-06 12:24:11
0001 #ifndef PhysicsTools_TagAndProbe_TriggerCandProducer_h
0002 #define PhysicsTools_TagAndProbe_TriggerCandProducer_h
0003
0004
0005 #include <memory>
0006
0007
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
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
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