1 #ifndef TkNavigation_SimpleNavigableLayer_H
2 #define TkNavigation_SimpleNavigableLayer_H
22 typedef std::vector<const DetLayer*>
DLC;
23 typedef std::vector<const BarrelDetLayer*>
BDLC;
24 typedef std::vector<const ForwardDetLayer*>
FDLC;
49 typedef BDLC::iterator
BDLI;
50 typedef FDLC::iterator
FDLI;
81 #endif // SimpleNavigableLayer_H
TrajectoryStateOnSurface TSOS
virtual void setPropagationDirection(PropagationDirection dir)
std::vector< LayerSetAndLayers > layers(const SeedingLayerSetsHits &sets)
virtual void setInwardLinks(const BDLC &, const FDLC &, TkLayerLess sorter=TkLayerLess(outsideIn))=0
SimpleNavigableLayer(const MagneticField *field, float eps, bool checkCrossingSide=true)
AnalyticalPropagator propagator(PropagationDirection dir) const
std::vector< const ForwardDetLayer * > FDLC
virtual std::vector< const DetLayer * > compatibleLayers(const FreeTrajectoryState &fts, PropagationDirection timeDirection, int &counter) const
FDLC::const_iterator ConstFDLI
std::vector< const DetLayer * > DLC
bool wellInside(const FreeTrajectoryState &fts, PropagationDirection dir, const BarrelDetLayer *bl, DLC &result) const
virtual void setAdditionalLink(const DetLayer *, NavigationDirection direction=insideOut)=0
void setCheckCrossingSide(bool docheck)
static std::atomic< unsigned int > counter
bool theCheckCrossingSide
volatile std::atomic< bool > shutdown_flag false
const MagneticField * theField
TSOS crossingState(const FreeTrajectoryState &fts, PropagationDirection dir) const
BDLC::const_iterator ConstBDLI
std::vector< const BarrelDetLayer * > BDLC