1 #ifndef TkGluedMeasurementDet_H
2 #define TkGluedMeasurementDet_H
57 template<
typename Collector>
60 template<
typename Collector>
72 target_.emplace_back(hit.
cloneSH());
80 static bool filter() {
return false;}
81 size_t size()
const {
return target_.size();}
110 bool filter()
const {
return matcher_->preFilter();}
111 size_t size()
const {
return target_.size();}
144 bool filter()
const {
return matcher_->preFilter();}
145 size_t size()
const {
return target_.size();}
163 template<
typename HitCollector>
166 const std::vector<SiStripRecHit2D>& hits,
173 template<
typename HitCollector>
virtual RecHitContainer recHits(const TrajectoryStateOnSurface &, const MeasurementTrackerEvent &data) const
bool testStrips(const TrajectoryStateOnSurface &tsos, const BoundPlane &gluedPlane, const TkStripMeasurementDet &mdet) const
Test the strips on one of the two dets with projection.
const TkStripMeasurementDet * theMonoDet
const MeasurementEstimator & estimator()
void init(const MeasurementDet *monoDet, const MeasurementDet *stereoDet)
const StripClusterParameterEstimator * cpe_
tracking::TempMeasurements TempMeasurements
void checkProjection(const TrajectoryStateOnSurface &ts, const RecHitContainer &monoHits, const RecHitContainer &stereoHits) const
SiStripRecHitMatcher::Collector collector_
virtual const GeomDet & geomDet() const
SiStripRecHitMatcher::Collector & collector()
static const MeasurementEstimator & estimator()
const TrajectoryStateOnSurface & stateOnThisDet_
bool isActive(const MeasurementTrackerEvent &data) const
return TRUE if both mono and stereo components are active
void add(const std::vector< const T * > &source, std::vector< const T * > &dest)
const TkStripMeasurementDet * monoDet() const
bool hasNewMatchedHits() const
TkGluedMeasurementDet(const GluedGeomDet *gdet, const SiStripRecHitMatcher *matcher, const StripClusterParameterEstimator *cpe)
const GeomDet & fastGeomDet() const
RecHitContainer & target_
size_t size() const
always fast as no estimator available here!
TempMeasurements & target_
bool hasNewMatchedHits() const
const StripClusterParameterEstimator * cpe_
virtual RecHitPointer cloneSH() const
const GluedGeomDet & specificGeomDet() const
const MeasurementEstimator & estimator()
TransientTrackingRecHit::RecHitPointer RecHitPointer
virtual bool measurements(const TrajectoryStateOnSurface &stateOnThisDet, const MeasurementEstimator &est, const MeasurementTrackerEvent &data, TempMeasurements &result) const
bool hasBadComponents(const TrajectoryStateOnSurface &tsos, const MeasurementTrackerEvent &data) const
return TRUE if at least one of the mono and stereo components has badChannels
const MeasurementEstimator & est_
void collectRecHits(const TrajectoryStateOnSurface &, const MeasurementTrackerEvent &data, Collector &coll) const
void doubleMatch(const TrajectoryStateOnSurface &ts, const MeasurementTrackerEvent &data, Collector &collector) const
std::shared_ptr< TrackingRecHit const > RecHitPointer
const SiStripRecHitMatcher * matcher_
const StripClusterParameterEstimator * cpe_
RecHitContainer projectOnGluedDet(const std::vector< SiStripRecHit2D > &hits, const TrajectoryStateOnSurface &ts) const
const SiStripRecHitMatcher * theMatcher
SiStripRecHitMatcher::Collector & collector()
SiStripRecHitMatcher::Collector Collector
bool hasNewMatchedHits() const
void clearNewMatchedHitsFlag()
void checkHitProjection(const TrackingRecHit &hit, const TrajectoryStateOnSurface &ts, const GeomDet &det) const
const TrajectoryStateOnSurface & stateOnThisDet_
bool isActive(const MeasurementTrackerEvent &data) const
Is this module active in reconstruction? It must be both 'setActiveThisEvent' and 'setActive'...
const TkStripMeasurementDet * theStereoDet
SiStripRecHitMatcher::Collector Collector
TrackingRecHit::ConstRecHitContainer RecHitContainer
std::vector< BaseTrackerRecHit * > SimpleHitContainer
char data[epos_bytes_allocation]
void clearNewMatchedHitsFlag()
const SiStripRecHitMatcher * matcher_
void add(SiStripMatchedRecHit2D const &hit)
SiStripRecHitMatcher::Collector & collector()
SiStripRecHitMatcher::Collector Collector
boost::function< void(SiStripMatchedRecHit2D const &)> Collector
const TkStripMeasurementDet * stereoDet() const
const SiStripRecHitMatcher * matcher_
const StripClusterParameterEstimator * theCPE
SiStripRecHitMatcher::Collector collector_
const MeasurementEstimator & est_
void clearNewMatchedHitsFlag()
SiStripRecHitMatcher::Collector collector_
SimpleHitContainer & target_