Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 12:49:39

0001 #ifndef HLTrigger_btau_HLTJetTag_h
0002 #define HLTrigger_btau_HLTJetTag_h
0003 
0004 /** \class HLTJetTag
0005  *
0006  *  This class is an HLTFilter (a spcialized EDFilter) implementing
0007  *  tagged multi-jet trigger for b and tau.
0008  *  It should be run after the normal multi-jet trigger.
0009  *
0010  *
0011  *  \author Arnaud Gay, Ian Tomalin
0012  *  \maintainer Andrea Bocci
0013  *
0014  */
0015 
0016 #include <string>
0017 
0018 #include "FWCore/Framework/interface/Frameworkfwd.h"
0019 #include "FWCore/Utilities/interface/InputTag.h"
0020 #include "HLTrigger/HLTcore/interface/HLTFilter.h"
0021 #include "DataFormats/BTauReco/interface/JetTag.h"
0022 
0023 namespace edm {
0024   class ConfigurationDescriptions;
0025 }
0026 
0027 //
0028 // class declaration
0029 //
0030 
0031 template <typename T>
0032 class HLTJetTag : public HLTFilter {
0033 public:
0034   explicit HLTJetTag(const edm::ParameterSet& config);
0035   ~HLTJetTag() override;
0036   static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0037   bool hltFilter(edm::Event& event,
0038                  const edm::EventSetup& setup,
0039                  trigger::TriggerFilterObjectWithRefs& filterproduct) const override;
0040 
0041 private:
0042   edm::InputTag m_Jets;  // module label of input JetCollection
0043   edm::EDGetTokenT<std::vector<T> > m_JetsToken;
0044   edm::InputTag m_JetTags;  // module label of input JetTagCollection
0045   edm::EDGetTokenT<reco::JetTagCollection> m_JetTagsToken;
0046   double m_MinTag, m_MaxTag;  // tag descriminator cuts applied to each jet
0047   int m_MinJets;              // min. number of jets required to be tagged
0048   int m_TriggerType;
0049 };
0050 
0051 #endif  // HLTrigger_btau_HLTJetTag_h