00001 #include "TrackingTools/DetLayers/interface/GeomDetCompatibilityChecker.h" 00002 #include "TrackingTools/TrajectoryState/interface/TrajectoryStateOnSurface.h" 00003 00004 using namespace std; 00005 00006 pair<bool, TrajectoryStateOnSurface> 00007 GeomDetCompatibilityChecker::isCompatible(const GeomDet* theDet, 00008 const TrajectoryStateOnSurface& tsos, 00009 const Propagator& prop, 00010 const MeasurementEstimator& est) { 00011 TrajectoryStateOnSurface propSt = prop.propagate( tsos, theDet->specificSurface()); 00012 if ( propSt.isValid()) { 00013 if ( est.estimate( propSt, theDet->specificSurface()) ) { 00014 return make_pair( true, propSt); 00015 } 00016 } 00017 return make_pair( false, propSt); 00018 } 00019