43 trackPtMin_( pset.getParameter<double>(
"trackPtMin" ) ),
44 coneSize_( pset.getParameter<double>(
"coneSize" ) )
50 auto caloIsolations = std::make_unique<TkIsoMap>();
63 int nHighPtTracks = highPtTracks->
size();
64 std::vector<double> iso(nTracks);
70 double caloIso = - 1.0;
72 for(
int j = 0; j < nHighPtTracks; ++j ) {
73 const Candidate & highPtTkCand = (*highPtTracks)[ j ];
74 if(
overlap(tkCand, highPtTkCand) ) {
84 filler.insert(tracks, iso.begin(), iso.end());
const unsigned int nTracks(const reco::Vertex &sv)
def setup(process, global_tag, zero_tesla=False)
void produce(edm::Event &event, const edm::EventSetup &setup) override
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
bool overlap(const reco::Muon &muon1, const reco::Muon &muon2, double pullX=1.0, double pullY=1.0, bool checkAdjacentChambers=false)
double depositWithin(double coneSize, const Vetos &vetos=Vetos(), bool skipDepositVeto=false) const
Get deposit.
edm::EDGetTokenT< reco::IsoDepositMap > isoDepsToken_
RefToBase< value_type > refAt(size_type i) const
#define DEFINE_FWK_MODULE(type)
edm::EDGetTokenT< reco::CandidateView > highPtTracksToken_
edm::ValueMap< float > TkIsoMap
virtual double pt() const =0
transverse momentum
edm::EDGetTokenT< reco::CandidateView > tracksToken_
IsolationProducerForTracks(const edm::ParameterSet &)