CMS 3D CMS Logo

Public Member Functions | Private Attributes

reco::isodeposit::OtherCandidatesDeltaRVeto Class Reference

#include <EventDependentAbsVetos.h>

Inheritance diagram for reco::isodeposit::OtherCandidatesDeltaRVeto:
reco::isodeposit::EventDependentAbsVeto reco::isodeposit::AbsVeto

List of all members.

Public Member Functions

virtual void centerOn (double eta, double phi)
 Nothing to do for this.
 OtherCandidatesDeltaRVeto (const edm::InputTag candidates, double deltaR)
 Create a veto specifying the input collection of the candidates, and the deltaR.
virtual void setEvent (const edm::Event &iEvent, const edm::EventSetup &iSetup)
 Picks up the directions of the given candidates.
virtual bool veto (double eta, double phi, float value) const
virtual ~OtherCandidatesDeltaRVeto ()

Private Attributes

float deltaR2_
std::vector< Directionitems_
edm::InputTag src_

Detailed Description

Definition at line 9 of file EventDependentAbsVetos.h.


Constructor & Destructor Documentation

reco::isodeposit::OtherCandidatesDeltaRVeto::OtherCandidatesDeltaRVeto ( const edm::InputTag  candidates,
double  deltaR 
) [inline]

Create a veto specifying the input collection of the candidates, and the deltaR.

Definition at line 12 of file EventDependentAbsVetos.h.

                                                                                 :
            src_(candidates), deltaR2_(deltaR*deltaR) { }
virtual reco::isodeposit::OtherCandidatesDeltaRVeto::~OtherCandidatesDeltaRVeto ( ) [inline, virtual]

Definition at line 16 of file EventDependentAbsVetos.h.

{} 

Member Function Documentation

virtual void reco::isodeposit::OtherCandidatesDeltaRVeto::centerOn ( double  eta,
double  phi 
) [inline, virtual]

Nothing to do for this.

Reimplemented from reco::isodeposit::AbsVeto.

Definition at line 23 of file EventDependentAbsVetos.h.

{ }
void reco::isodeposit::OtherCandidatesDeltaRVeto::setEvent ( const edm::Event iEvent,
const edm::EventSetup iSetup 
) [virtual]

Picks up the directions of the given candidates.

Implements reco::isodeposit::EventDependentAbsVeto.

Definition at line 21 of file EventDependentAbsVetos.cc.

References edm::Event::getByLabel().

                                                                                                     {
    items_.clear();
    edm::Handle<edm::View<reco::Candidate> > candidates;
    iEvent.getByLabel(src_, candidates);
    for (edm::View<reco::Candidate>::const_iterator it = candidates->begin(), ed = candidates->end(); it != ed; ++it) {
        items_.push_back(Direction(it->eta(), it->phi()));
    }
}
bool reco::isodeposit::OtherCandidatesDeltaRVeto::veto ( double  eta,
double  phi,
float  value 
) const [virtual]

Return "true" if a deposit at specific (eta,phi) with that value must be vetoed in the sum This is true if the deposit is within the configured deltaR from any item of the source collection

Implements reco::isodeposit::AbsVeto.

Definition at line 12 of file EventDependentAbsVetos.cc.

References reco::deltaR2(), deltaR2_, eta(), items_, and phi.

{
    for (std::vector<Direction>::const_iterator it = items_.begin(), ed = items_.end(); it != ed; ++it) {
        if (::deltaR2(it->eta(), it->phi(), eta, phi) < deltaR2_) return true;
    }
    return false;
}

Member Data Documentation

Definition at line 30 of file EventDependentAbsVetos.h.

Referenced by veto().

Definition at line 31 of file EventDependentAbsVetos.h.

Referenced by veto().

Definition at line 29 of file EventDependentAbsVetos.h.