1 #ifndef CommonTools_ParticleFlow_IPCutPFCandidateSelectorDefinition
2 #define CommonTools_ParticleFlow_IPCutPFCandidateSelectorDefinition
27 d0Cut_(cfg.getParameter<double>(
"d0Cut")),
28 dzCut_(cfg.getParameter<double>(
"dzCut")),
29 dtCut_(cfg.getParameter<double>(
"dtCut")),
30 d0SigCut_(cfg.getParameter<double>(
"d0SigCut")),
31 dzSigCut_(cfg.getParameter<double>(
"dzSigCut")),
32 dtSigCut_(cfg.getParameter<double>(
"dtSigCut")) {}
39 if (vertices->empty())
46 for (collection::const_iterator pfc = hc->begin(); pfc != hc->end(); ++pfc, ++
key) {
49 if (pfc->gsfTrackRef().isNonnull())
50 tk = pfc->gsfTrackRef().get();
51 else if (pfc->trackRef().isNonnull())
52 tk = pfc->trackRef().get();
68 double pfct = pfc->time();
69 double pfcte = pfc->timeError();
70 double dt = fabs(pfct - vt);
71 double dte =
std::sqrt(pfcte * pfcte + vte * vte);
81 if (pfc->numberOfSourceCandidatePtrs() > 0) {
84 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)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
double zError() const
error on z
double dxyError() const
error on dxy
std::vector< Vertex > VertexCollection
const Point & position() const
position
IPCutPFCandidateSelectorDefinition(const edm::ParameterSet &cfg, edm::ConsumesCollector &&iC)
edm::EDGetTokenT< reco::VertexCollection > verticesToken_
tuple key
prepare the HTCondor submission files and eventually submit them
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
static constexpr float d0
double xError() const
error on x
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
double tError() const
error on t
double t() const
t coordinate