29 inputJetTag_ (iConfig.
template getParameter<
edm::InputTag> (
"inputJetTag")),
30 caloTowerTag_(iConfig.
template getParameter<
edm::InputTag> (
"caloTowerTag")),
31 minPtJet_ (iConfig.
template getParameter<double> (
"minPtJet")),
32 minHFe_ (iConfig.
template getParameter<double> (
"minHFe")),
34 triggerType_ (iConfig.
template getParameter<
int> (
"triggerType"))
38 LogDebug(
"") <<
"HLTExclDiJetFilter: Input/minPtJet/minHFe/HF_OR/triggerType : " 57 desc.
add<
double>(
"minPtJet",30.0);
58 desc.
add<
double>(
"minHFe",50.0);
59 desc.
add<
bool>(
"HF_OR",
false);
74 typedef vector<T> TCollection;
86 double ptjet1=0., ptjet2=0.;
87 double phijet1=0., phijet2=0.;
89 if(recojets->size() > 1){
96 typename TCollection::const_iterator recojet ( recojets->begin() );
97 for (;recojet<=(recojets->begin()+1); ++recojet) {
100 ptjet1 = recojet->pt();
101 phijet1 = recojet->phi();
103 JetRef1 = TRef(recojets,
distance(recojets->begin(),recojet));
107 ptjet2 = recojet->pt();
108 phijet2 = recojet->phi();
110 JetRef2 = TRef(recojets,
distance(recojets->begin(),recojet));
117 double Dphi=
std::abs(phijet1-phijet2);
129 bool hf_accept=
false;
138 for(
auto const & cc : *o) {
139 if(
std::abs(cc.ieta())>28 && cc.energy()<4.0)
continue;
140 if(cc.ieta()>28) ehfp+=cc.energy();
141 if(cc.ieta()<-28) ehfm+=cc.energy();
148 hf_accept =
HF_OR_ ? hf_accept_or : hf_accept_and;
156 bool accept(n>0 && hf_accept);
~HLTExclDiJetFilter() override
bool getByToken(EDGetToken token, Handle< PROD > &result) const
bool hltFilter(edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct) const override
std::string defaultModuleLabel()
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
void addObject(int id, const reco::RecoEcalCandidateRef &ref)
setters for L3 collections: (id=physics type, and Ref<C>)
edm::InputTag inputJetTag_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
edm::EDGetTokenT< std::vector< T > > m_theJetToken
Abs< T >::type abs(const T &t)
edm::InputTag caloTowerTag_
def template(fileName, svg, replaceme="REPLACEME")
ParameterDescriptionBase * add(U const &iLabel, T const &value)
edm::EDGetTokenT< CaloTowerCollection > m_theCaloTowerCollectionToken
static void makeHLTFilterDescription(edm::ParameterSetDescription &desc)
HLTExclDiJetFilter(const edm::ParameterSet &)
void addCollectionTag(const edm::InputTag &collectionTag)
collectionTags
void add(std::string const &label, ParameterSetDescription const &psetDescription)