1 #ifndef CommonTools_RecoAlgos_RecoTrackSelectorBase_h 2 #define CommonTools_RecoAlgos_RecoTrackSelectorBase_h 20 :
ptMin_(cfg.getParameter<double>(
"ptMin")),
23 meanPhi_((cfg.getParameter<double>(
"minPhi") + cfg.getParameter<double>(
"maxPhi")) / 2.),
24 rangePhi_((cfg.getParameter<double>(
"maxPhi") - cfg.getParameter<double>(
"minPhi")) / 2.),
25 tip_(cfg.getParameter<double>(
"tip")),
26 lip_(cfg.getParameter<double>(
"lip")),
27 maxChi2_(cfg.getParameter<double>(
"maxChi2")),
38 <<
"RecoTrackSelectorPhase: minPhi (" <<
minPhi <<
") must be smaller than maxPhi (" << maxPhi
39 <<
"). The range is constructed from minPhi to maxPhi around their average.";
43 <<
"RecoTrackSelectorPhase: minPhi (" <<
minPhi 44 <<
") must be smaller than PI. The range is constructed from minPhi to maxPhi around their average.";
46 if (maxPhi <= -
M_PI) {
48 <<
"RecoTrackSelectorPhase: maxPhi (" << maxPhi
49 <<
") must be larger than -PI. The range is constructed from minPhi to maxPhi around their average.";
79 vertex_ = (*hVtx)[0].position();
87 bool quality_ok =
true;
90 for (
unsigned int i = 0;
i <
quality_.size(); ++
i) {
154 std::vector<reco::TrackBase::TrackQuality>
quality_;
EDGetTokenT< ProductType > consumes(edm::InputTag const &tag)
T getParameter(std::string const &) const
void init(const edm::Event &event, const edm::EventSetup &es)
double normalizedChi2() const
chi-squared divided by n.d.o.f. (or chi-squared * 1e6 if n.d.o.f. is zero)
int numberOfValidHits() const
RecoTrackSelectorBase(const edm::ParameterSet &cfg)
double phi() const
azimuthal angle of momentum vector
std::vector< Vertex > VertexCollection
collection of Vertex objects
int pixelLayersWithMeasurement() const
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
double dsz() const
dsz parameter (THIS IS NOT the SZ impact parameter to (0,0,0) if refPoint is far from (0...
int trackerLayersWithMeasurement() const
TrackAlgorithm
track algorithm
reco::Track::Point vertex_
TrackAlgorithm algo() const
int numberOfValidStripLayersWithMonoAndStereo(uint16_t stripdet, uint16_t layer) const
double pt() const
track transverse momentum
std::vector< reco::TrackBase::TrackAlgorithm > algorithmMask_
math::XYZPoint Point
point in the space
std::vector< reco::TrackBase::TrackQuality > quality_
RecoTrackSelectorBase(const edm::ParameterSet &cfg, edm::ConsumesCollector &iC)
TrackAlgorithm originalAlgo() const
static TrackQuality qualityByName(const std::string &name)
AlgoMask algoMask() const
const HitPattern & hitPattern() const
Access the hit pattern, indicating in which Tracker layers the track has hits.
bool operator()(const reco::Track &t) const
edm::EDGetTokenT< reco::VertexCollection > vertexToken_
bool quality(const TrackQuality) const
Track quality.
std::vector< reco::TrackBase::TrackAlgorithm > algorithm_
bool operator()(const reco::Track &t, const reco::Track::Point &vertex) const
edm::EDGetTokenT< reco::BeamSpot > bsSrcToken_
static TrackAlgorithm algoByName(const std::string &name)
int numberOfValidPixelHits() const
bool operator()(const reco::TrackRef &tref) const
const Point & position() const
position
double dxy() const
dxy parameter. (This is the transverse impact parameter w.r.t. to (0,0,0) ONLY if refPoint is close t...
std::vector< reco::TrackBase::TrackAlgorithm > originalAlgorithm_