31 hltTauToken = consumes<IsolatedTauTagInfoCollection>(iConfig.
getParameter<
InputTag>(
"HLTTauCollection"));
33 minNumberOfjets = iConfig.
getParameter<
int>(
"minNumberOfJets");
37 minDRFromTau = iConfig.
getParameter<
double>(
"minDRFromTau");
47 <<
" Number_events_read " <<
nEvents
48 <<
" Number_events_kept " << nSelectedEvents
49 <<
" Efficiency " << ((double)nSelectedEvents)/((double)
nEvents + 0.01) << std::endl;
59 iEvent.
getByToken(hltTauToken, tauTagL3Handle);
61 if ( !tauTagL3Handle.
isValid() )
return false;
66 if (tauTagL3Handle.
isValid() ) {
68 IsolatedTauTagInfoCollection::const_iterator
i;
69 for ( i = L3Taus.begin(); i != L3Taus.end(); i++ ) {
70 if (i->discriminator() == 0)
continue;
71 Jet taujet = *(i->jet().get());
72 if (taujet.
et() > maxEt) {
79 if (maxEt == 0)
return false;
86 if ( !jetHandle.
isValid() )
return false;
88 bool accepted =
false;
93 CaloJetCollection::const_iterator iJet;
94 for (iJet = jets.begin(); iJet!= jets.end(); iJet++ ) {
95 if (iJet->et() > jetEtMin &&
96 iJet->eta() > jetEtaMin &&
97 iJet->eta() < jetEtaMax ) {
98 double DR =
deltaR(theTau.
eta(),iJet->eta(),theTau.
phi(),iJet->phi());
99 if (DR > minDRFromTau) nJets++;
102 if (nJets >= minNumberOfjets) {
T getParameter(std::string const &) const
virtual double et() const
transverse energy
bool getByToken(EDGetToken token, Handle< PROD > &result) const
virtual float phi() const
momentum azimuthal angle
Base class for all types of Jets.
virtual float eta() const
momentum pseudorapidity
std::vector< IsolatedTauTagInfo > IsolatedTauTagInfoCollection
HeavyChHiggsToTauNuSkim(const edm::ParameterSet &)
double deltaR(double eta1, double eta2, double phi1, double phi2)
~HeavyChHiggsToTauNuSkim()
virtual bool filter(edm::Event &, const edm::EventSetup &)
T const * product() const
std::vector< CaloJet > CaloJetCollection
collection of CaloJet objects