CMS 3D CMS Logo

SimpleBarrelNavigableLayer.h
Go to the documentation of this file.
1 #ifndef TkNavigation_SimpleBarrelNavigableLayer_H
2 #define TkNavigation_SimpleBarrelNavigableLayer_H
3 
4 #include "SimpleNavigableLayer.h"
5 
6 #include <vector>
7 
12 public:
14  const BDLC& outerBLC,
15  const FDLC& outerLeftFL,
16  const FDLC& outerRightFL,
17  const MagneticField* field,
18  float epsilon,
19  bool checkCrossingSide = true);
20 
21  // NavigableLayer interface
22  std::vector<const DetLayer*> nextLayers(NavigationDirection direction) const override;
23 
24  std::vector<const DetLayer*> nextLayers(const FreeTrajectoryState& fts,
25  PropagationDirection timeDirection) const override;
26 
28 
29  std::vector<const DetLayer*> compatibleLayers(NavigationDirection direction) const override;
30 
31  std::vector<const DetLayer*> compatibleLayers(const FreeTrajectoryState& fts,
32  PropagationDirection dir) const override {
33  int counter = 0;
34  return SimpleNavigableLayer::compatibleLayers(fts, dir, counter);
35  }
36 
37  void setAdditionalLink(const DetLayer*, NavigationDirection direction = insideOut) override;
38 
39  const DetLayer* detLayer() const override { return theDetLayer; }
40  void setDetLayer(const DetLayer* dl) override;
41 
42  void setInwardLinks(const BDLC& theBarrelv,
43  const FDLC& theForwardv,
45 
46 private:
50 
53 
56 
61 };
62 
63 #endif // SimpleBarrelNavigableLayer_H
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
const DetLayer * detLayer() const override
#define dso_hidden
Definition: Visibility.h:12
virtual std::vector< const DetLayer * > nextLayers(NavigationDirection direction) const =0
virtual void setAdditionalLink(const DetLayer *, NavigationDirection direction=insideOut)=0
std::vector< const DetLayer * > compatibleLayers(const FreeTrajectoryState &fts, PropagationDirection timeDirection, int &counter) const final
std::vector< const BarrelDetLayer * > BDLC