2 #include "Math/GenVector/VectorUtil.h"
13 using namespace l1extra;
21 produces<CaloJetCollection>();
32 using namespace trigger;
33 using namespace l1extra;
35 typedef std::vector<LeafCandidate> LeafCandidateCollection;
40 double matchingR = 0.5;
51 tauCandRefVec.clear();
52 jetCandRefVec.clear();
59 for(
unsigned int iL1Tau=0; iL1Tau <tauCandRefVec.size();iL1Tau++)
61 for(
unsigned int iJet=0;iJet<tauJets->size();iJet++)
64 const Candidate & myJet = (*tauJets)[iJet];
65 deltaR = ROOT::Math::VectorUtil::DeltaR(myJet.
p4().Vect(), (tauCandRefVec[iL1Tau]->p4()).Vect());
69 if(myJet.
pt() > mEt_Min) {
71 tauL2jets->push_back(myCaloJet);
78 for(
unsigned int iL1Tau=0; iL1Tau <jetCandRefVec.size();iL1Tau++)
80 for(
unsigned int iJet=0;iJet<tauJets->size();iJet++)
82 const Candidate & myJet = (*tauJets)[iJet];
84 deltaR = ROOT::Math::VectorUtil::DeltaR(myJet.
p4().Vect(), (jetCandRefVec[iL1Tau]->p4()).Vect());
88 if(myJet.
pt() > mEt_Min) {
90 tauL2jets->push_back(myCaloJet);
100 iEvent.
put(tauL2jets);
T getParameter(std::string const &) const
Jets made from CaloTowers.
virtual void produce(edm::Event &, const edm::EventSetup &) override
virtual float pt() const =0
transverse momentum
OrphanHandle< PROD > put(std::auto_ptr< PROD > product)
Put a new product.
auto deltaR(const T1 &t1, const T2 &t2) -> decltype(t1.eta())
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
XYZPointD XYZPoint
point in space with cartesian internal representation
L1HLTJetsMatching(const edm::ParameterSet &)
std::vector< CaloJet > CaloJetCollection
collection of CaloJet objects
virtual const LorentzVector & p4() const =0
four-momentum Lorentz vector