1 #ifndef TkGluedMeasurementDet_H
2 #define TkGluedMeasurementDet_H
30 virtual std::vector<TrajectoryMeasurement>
53 template<
typename Collector>
56 template<
typename Collector>
98 std::vector<TrajectoryMeasurement> &
target) ;
122 template<
typename HitCollector>
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
void init(const MeasurementDet *monoDet, const MeasurementDet *stereoDet)
void checkProjection(const TrajectoryStateOnSurface &ts, const RecHitContainer &monoHits, const RecHitContainer &stereoHits) const
void collectRecHits(const TrajectoryStateOnSurface &, Collector &coll) const
std::vector< TrajectoryMeasurement > & target_
TransientTrackingRecHit::ConstRecHitContainer RecHitContainer
virtual const GeomDet & geomDet() const
SiStripRecHitMatcher::Collector & collector()
void add(const std::vector< const T * > &source, std::vector< const T * > &dest)
const TkStripMeasurementDet * monoDet() const
bool hasBadComponents(const TrajectoryStateOnSurface &tsos) const
return TRUE if at least one of the mono and stereo components has badChannels
bool hasNewMatchedHits() const
TkGluedMeasurementDet(const GluedGeomDet *gdet, const SiStripRecHitMatcher *matcher, const StripClusterParameterEstimator *cpe)
const GeomDet & fastGeomDet() const
RecHitContainer & target_
const StripClusterParameterEstimator * cpe_
const GluedGeomDet & specificGeomDet() const
TransientTrackingRecHit::RecHitPointer RecHitPointer
void checkHitProjection(const TransientTrackingRecHit &hit, const TrajectoryStateOnSurface &ts, const GeomDet &det) const
void doubleMatch(const TrajectoryStateOnSurface &ts, Collector &collector) const
const SiStripRecHitMatcher * matcher_
const StripClusterParameterEstimator * cpe_
virtual RecHitContainer recHits(const TrajectoryStateOnSurface &) const
const SiStripRecHitMatcher * theMatcher
SiStripRecHitMatcher::Collector & collector()
SiStripRecHitMatcher::Collector Collector
bool hasNewMatchedHits() const
virtual std::vector< TrajectoryMeasurement > fastMeasurements(const TrajectoryStateOnSurface &stateOnThisDet, const TrajectoryStateOnSurface &startingState, const Propagator &, const MeasurementEstimator &) const
const TrajectoryStateOnSurface & stateOnThisDet_
const TkStripMeasurementDet * theStereoDet
SiStripRecHitMatcher::Collector Collector
void clearNewMatchedHitsFlag()
const SiStripRecHitMatcher * matcher_
void add(SiStripMatchedRecHit2D const &hit)
bool isActive() const
Is this module active in reconstruction? It must be both 'setActiveThisEvent' and 'setActive'...
static RecHitPointer build(const GeomDet *geom, const TrackingRecHit *rh, const SiStripRecHitMatcher *matcher, const StripClusterParameterEstimator *cpe=0, bool computeCoarseLocalPosition=false)
RecHitContainer projectOnGluedDet(const RecHitContainer &hits, const TrajectoryStateOnSurface &ts) const
boost::function< void(SiStripMatchedRecHit2D const &)> Collector
const TkStripMeasurementDet * stereoDet() const
bool isActive() const
return TRUE if both mono and stereo components are active
const StripClusterParameterEstimator * theCPE
SiStripRecHitMatcher::Collector collector_
virtual SiStripMatchedRecHit2D * clone() const
const MeasurementEstimator & est_
void clearNewMatchedHitsFlag()
SiStripRecHitMatcher::Collector collector_