CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
SimpleBarrelNavigableLayer.h
Go to the documentation of this file.
1 #ifndef TkNavigation_SimpleBarrelNavigableLayer_H
2 #define TkNavigation_SimpleBarrelNavigableLayer_H
4 
5 #include "SimpleNavigableLayer.h"
6 
7 #include <vector>
8 
13 public:
15  const BDLC& outerBLC,
16  const FDLC& outerLeftFL,
17  const FDLC& outerRightFL,
18  const MagneticField* field,
19  float epsilon,
20  bool checkCrossingSide = true);
21 
22  // NavigableLayer interface
23  std::vector<const DetLayer*> nextLayers(NavigationDirection direction) const override;
24 
25  std::vector<const DetLayer*> nextLayers(const FreeTrajectoryState& fts,
26  PropagationDirection timeDirection) const override;
27 
29 
30  std::vector<const DetLayer*> compatibleLayers(NavigationDirection direction) const override;
31 
32  std::vector<const DetLayer*> compatibleLayers(const FreeTrajectoryState& fts,
33  PropagationDirection dir) const override {
34  int counter = 0;
35  return SimpleNavigableLayer::compatibleLayers(fts, dir, counter);
36  }
37 
38  void setAdditionalLink(const DetLayer*, NavigationDirection direction = insideOut) override;
39 
40  const DetLayer* detLayer() const override { return theDetLayer; }
41  void setDetLayer(const DetLayer* dl) override;
42 
43  void setInwardLinks(const BDLC& theBarrelv,
44  const FDLC& theForwardv,
46 
47 private:
51 
54 
57 
62 };
63 
64 #endif // SimpleBarrelNavigableLayer_H
std::vector< const DetLayer * > compatibleLayers(const FreeTrajectoryState &fts, PropagationDirection dir) const override
PropagationDirection
virtual void setInwardLinks(const BDLC &, const FDLC &, TkLayerLess sorter=TkLayerLess(outsideIn))=0
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
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