30 inputTag_ (iConfig.
template getParameter< edm::InputTag > (
"inputTag")),
31 minPt_ (iConfig.
template getParameter<double> (
"minPt")),
32 minEta_ (iConfig.
template getParameter<double> (
"minEta")),
33 maxEta_ (iConfig.
template getParameter<double> (
"maxEta")),
34 nNeg_ (iConfig.
template getParameter<unsigned int>(
"nNeg")),
35 nPos_ (iConfig.
template getParameter<unsigned int>(
"nPos")),
36 nTot_ (iConfig.
template getParameter<unsigned int>(
"nTot")),
37 triggerType_ (iConfig.
template getParameter<int> (
"triggerType"))
39 LogDebug(
"") <<
"HLTForwardBackwardJetsFilter: Input/minPt/minEta/maxEta/triggerType : "
57 makeHLTFilterDescription(desc);
59 desc.
add<
double>(
"minPt",15.0);
60 desc.
add<
double>(
"minEta",3.0);
61 desc.
add<
double>(
"maxEta",5.1);
62 desc.
add<
unsigned int>(
"nNeg",1);
63 desc.
add<
unsigned int>(
"nPos",1);
64 desc.
add<
unsigned int>(
"nTot",0);
77 using namespace trigger;
79 typedef vector<T> TCollection;
90 unsigned int nPosJets(0);
91 unsigned int nNegJets(0);
93 typename TCollection::const_iterator
jet;
96 for (
jet=objects->begin();
jet!=objects->end();
jet++) {
97 double ptjet =
jet->pt();
98 double etajet =
jet->eta();
99 if( ptjet >= minPt_ ){
100 if (( minEta_<= etajet) && (etajet <= maxEta_) ){
102 TRef ref = TRef(objects,distance(objects->begin(),
jet));
103 filterproduct.
addObject(triggerType_,ref);
105 if ((-maxEta_<= etajet) && (etajet <=-minEta_) ){
107 TRef ref = TRef(objects,distance(objects->begin(),
jet));
108 filterproduct.
addObject(triggerType_,ref);
115 ( nNegJets >= nNeg_ ) &&
116 ( nPosJets >= nPos_ ) &&
117 ((nNegJets+nPosJets) >= nTot_ )
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>)
~HLTForwardBackwardJetsFilter()
ParameterDescriptionBase * add(U const &iLabel, T const &value)
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
void addCollectionTag(const edm::InputTag &collectionTag)
collectionTags
void add(std::string const &label, ParameterSetDescription const &psetDescription)
virtual bool hltFilter(edm::Event &, const edm::EventSetup &, trigger::TriggerFilterObjectWithRefs &filterproduct)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
HLTForwardBackwardJetsFilter(const edm::ParameterSet &)