1 #ifndef CommonTools_ParticleFlow_IPCutPFCandidateSelectorDefinition
2 #define CommonTools_ParticleFlow_IPCutPFCandidateSelectorDefinition
24 vertices_( cfg.getParameter<edm::InputTag> (
"vertices" ) ),
25 d0Cut_( cfg.getParameter<double>(
"d0Cut") ),
26 dzCut_( cfg.getParameter<double>(
"dzCut") ),
27 d0SigCut_( cfg.getParameter<double>(
"d0SigCut") ),
28 dzSigCut_( cfg.getParameter<double>(
"dzSigCut") ) {}
37 if (vertices->empty())
return;
41 for( collection::const_iterator pfc = hc->begin();
42 pfc != hc->end(); ++pfc, ++
key) {
46 if (pfc->gsfTrackRef().isNonnull()) tk = pfc->gsfTrackRef().get();
47 else if (pfc->trackRef().isNonnull()) tk = pfc->trackRef().get();
64 if ( pfc->numberOfSourceCandidatePtrs() > 0 ) {
69 selected_.back().setSourceCandidatePtr( ptrToMother );
Selects PFCandidates basing on their compatibility with vertex.
void select(const HandleToCollection &hc, const edm::Event &e, const edm::EventSetup &s)
double zError() const
error on z
double dxyError() const
error on dxy
const Point & position() const
position
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
double dz() const
dz parameter (= dsz/cos(lambda)). This is the track z0 w.r.t (0,0,0) only if the refPoint is close to...
double dzError() const
error on dz
double xError() const
error on x
IPCutPFCandidateSelectorDefinition(const edm::ParameterSet &cfg)
Particle reconstructed by the particle flow algorithm.
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...
double yError() const
error on y