CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
SimpleForwardNavigableLayer.h
Go to the documentation of this file.
1 #ifndef TkNavigation_SimpleForwardNavigableLayer_H
2 #define TkNavigation_SimpleForwardNavigableLayer_H
4 
5 #include "SimpleNavigableLayer.h"
6 
11 public:
13  const BDLC& outerBL,
14  const FDLC& outerFL,
15  const MagneticField* field,
16  float epsilon,
17  bool checkCrossingSide = true);
18 
19  // NavigableLayer interface
20  std::vector<const DetLayer*> nextLayers(NavigationDirection direction) const override;
21 
22  std::vector<const DetLayer*> nextLayers(const FreeTrajectoryState& fts,
23  PropagationDirection timeDirection) const override;
24 
26 
27  std::vector<const DetLayer*> compatibleLayers(NavigationDirection direction) const override;
28 
29  std::vector<const DetLayer*> compatibleLayers(const FreeTrajectoryState& fts,
30  PropagationDirection dir) const override {
31  int counter = 0;
32  return SimpleNavigableLayer::compatibleLayers(fts, dir, counter);
33  }
34 
35  void setAdditionalLink(const DetLayer*, NavigationDirection direction = insideOut) override;
36 
37  const DetLayer* detLayer() const override { return theDetLayer; }
38  void setDetLayer(const DetLayer* dl) override;
39 
40  void setInwardLinks(const BDLC&, const FDLC&, TkLayerLess sorter = TkLayerLess(outsideIn)) override;
41 
42 private:
46 
49 
52 };
53 
54 #endif // SimpleForwardNavigableLayer_H
const DetLayer * detLayer() const override
PropagationDirection
virtual void setInwardLinks(const BDLC &, const FDLC &, TkLayerLess sorter=TkLayerLess(outsideIn))=0
std::vector< const DetLayer * > compatibleLayers(const FreeTrajectoryState &fts, PropagationDirection dir) const override
std::vector< const ForwardDetLayer * > FDLC
virtual void setDetLayer(DetLayer const *dl)=0
std::vector< const DetLayer * > DLC
#define dso_hidden
Definition: Visibility.h:12
std::vector< const DetLayer * > compatibleLayers(const FreeTrajectoryState &fts, PropagationDirection timeDirection, int &counter) const final
virtual void setAdditionalLink(const DetLayer *, NavigationDirection direction=insideOut)=0
virtual std::vector< const DetLayer * > nextLayers(NavigationDirection direction) const =0
static std::atomic< unsigned int > counter
std::vector< const BarrelDetLayer * > BDLC