18 template <
typename T1>
34 template <
typename T1>
37 template <
typename T1>
39 float dR2 =
deltaR2(candRef->eta(), candRef->phi(), pfclu->eta(), pfclu->phi());
40 if (
dR2 > (drMax_ * drMax_))
43 if (candRef->superCluster().
isNonnull()) {
46 it != candRef->superCluster()->clustersEnd();
48 if ((*it)->seed() == pfclu->seed()) {
59 float dR2 =
deltaR2(candRef->eta(), candRef->phi(), pfclu->eta(), pfclu->phi());
60 if (
dR2 > (drMax_ * drMax_) ||
dR2 < drVeto2_)
66 template <
typename T1>
72 drVeto2_ = drVetoBarrel_ * drVetoBarrel_;
73 etaStrip = etaStripBarrel_;
75 drVeto2_ = drVetoEndcap_ * drVetoEndcap_;
76 etaStrip = etaStripEndcap_;
80 for (
size_t i = 0;
i < clusterHandle->size();
i++) {
84 if (
std::abs(pfclu->pt()) < energyBarrel_)
87 if (
std::abs(pfclu->energy()) < energyEndcap_)
94 if (not computedRVeto(
cand, pfclu))
103 template <
typename T1>
105 return getSum(*ref, clusts);
108 template <
typename T1>
111 if (
dR2 > (drMax_ * drMax_))
114 if (
cand.superCluster().isNonnull()) {
118 if ((*it)->seed() == pfclu->seed()) {
EcalPFClusterIsolation(double drMax, double drVetoBarrel, double drVetoEndcap, double etaStripBarrel, double etaStripEndcap, double energyBarrel, double energyEndcap)
double getSum(T1, edm::Handle< std::vector< reco::PFCluster > >)
~EcalPFClusterIsolation()
bool isNonnull() const
Checks for non-null.
ALPAKA_FN_ACC static ALPAKA_FN_INLINE float dR2(Position4 pos1, Position4 pos2)
Abs< T >::type abs(const T &t)
bool computedRVeto(T1Ref candRef, reco::PFClusterRef pfclu)