CMS 3D CMS Logo

Public Member Functions | Private Attributes

reco::isodeposit::OtherCandVeto Class Reference

#include <EventDependentAbsVetos.h>

Inheritance diagram for reco::isodeposit::OtherCandVeto:
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.
 OtherCandVeto (const edm::InputTag candidates, AbsVeto *veto)
 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 ~OtherCandVeto ()

Private Attributes

std::vector< Directionitems_
edm::InputTag src_
std::auto_ptr< AbsVetoveto_

Detailed Description

Definition at line 34 of file EventDependentAbsVetos.h.


Constructor & Destructor Documentation

reco::isodeposit::OtherCandVeto::OtherCandVeto ( const edm::InputTag  candidates,
AbsVeto veto 
) [inline]

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

Definition at line 37 of file EventDependentAbsVetos.h.

                                                                     :
            src_(candidates), veto_(veto) { }
virtual reco::isodeposit::OtherCandVeto::~OtherCandVeto ( ) [inline, virtual]

Definition at line 41 of file EventDependentAbsVetos.h.

{} 

Member Function Documentation

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

Nothing to do for this.

Reimplemented from reco::isodeposit::AbsVeto.

Definition at line 48 of file EventDependentAbsVetos.h.

{ }
void reco::isodeposit::OtherCandVeto::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 37 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::OtherCandVeto::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 stored AbsVeto of any item of the source collection

Implements reco::isodeposit::AbsVeto.

Definition at line 27 of file EventDependentAbsVetos.cc.

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

Member Data Documentation

Definition at line 55 of file EventDependentAbsVetos.h.

Definition at line 54 of file EventDependentAbsVetos.h.

Definition at line 56 of file EventDependentAbsVetos.h.