CMS 3D CMS Logo

ETLNavigableLayer.h
Go to the documentation of this file.
1 #ifndef Navigation_ETLNavigableLayer_H
2 #define Navigation_ETLNavigableLayer_H
3 
17 /* Collaborating Class Declarations */
20 
21 class DetLayer;
22 class ForwardDetLayer;
23 
24 /* Base Class Headers */
26 
27 /* C++ Headers */
28 
29 /* ====================================================================== */
30 
31 /* Class ETLNavigableLayer Interface */
32 
34 public:
36  const MapB& innerBarrel,
37  const MapE& outerEndcap,
38  const MapE& innerEndcap,
39  const MapB& allInnerBarrel,
40  const MapE& allOuterEndcap,
41  const MapE& allInnerEndcap)
42  : theDetLayer(fdl),
43  theInnerBarrelLayers(innerBarrel),
44  theOuterEndcapLayers(outerEndcap),
45  theInnerEndcapLayers(innerEndcap),
46  theAllInnerBarrelLayers(allInnerBarrel),
47  theAllOuterEndcapLayers(allOuterEndcap),
48  theAllInnerEndcapLayers(allInnerEndcap) {}
49 
51  ETLNavigableLayer(const ForwardDetLayer* fdl, const MapE& outerEndcap)
52  : theDetLayer(fdl), theOuterEndcapLayers(outerEndcap) {}
54  ETLNavigableLayer(const ForwardDetLayer* fdl, const MapE& outerEndcap, const MapE& allOuterEndcap)
55  : theDetLayer(fdl), theOuterEndcapLayers(outerEndcap), theAllOuterEndcapLayers(allOuterEndcap) {}
56 
58  std::vector<const DetLayer*> nextLayers(NavigationDirection dir) const override;
59 
61  std::vector<const DetLayer*> nextLayers(const FreeTrajectoryState& fts, PropagationDirection dir) const override;
62 
63  std::vector<const DetLayer*> compatibleLayers(NavigationDirection dir) const override;
64 
66  std::vector<const DetLayer*> compatibleLayers(const FreeTrajectoryState& fts,
67  PropagationDirection dir) const override;
69  const DetLayer* detLayer() const override;
70 
72  void setDetLayer(const DetLayer*) override;
73 
78 
82 
84  void setInwardLinks(const MapB&, const MapE&);
85  void setInwardCompatibleLinks(const MapB&, const MapE&);
86 
87 private:
88  void pushResult(std::vector<const DetLayer*>& result, const MapB& map) const;
89 
90  void pushResult(std::vector<const DetLayer*>& result, const MapE& map) const;
91 
92  void pushResult(std::vector<const DetLayer*>& result, const MapB& map, const FreeTrajectoryState& fts) const;
93 
94  void pushResult(std::vector<const DetLayer*>& result, const MapE& map, const FreeTrajectoryState& fts) const;
95 
96  void pushCompatibleResult(std::vector<const DetLayer*>& result,
97  const MapB& map,
98  const FreeTrajectoryState& fts) const;
99 
100  void pushCompatibleResult(std::vector<const DetLayer*>& result,
101  const MapE& map,
102  const FreeTrajectoryState& fts) const;
103 
104 private:
112 };
113 #endif
ETLNavigableLayer::compatibleLayers
std::vector< const DetLayer * > compatibleLayers(NavigationDirection dir) const override
Definition: ETLNavigableLayer.cc:59
ETLNavigableLayer::getInnerEndcapLayers
MapE getInnerEndcapLayers() const
Definition: ETLNavigableLayer.h:76
ETLNavigableLayer::ETLNavigableLayer
ETLNavigableLayer(const ForwardDetLayer *fdl, const MapE &outerEndcap, const MapE &allOuterEndcap)
Constructor with all outer layers only.
Definition: ETLNavigableLayer.h:54
ETLNavigableLayer::setInwardLinks
void setInwardLinks(const MapB &, const MapE &)
set inward links
Definition: ETLNavigableLayer.cc:144
ETLNavigableLayer::getAllOuterEndcapLayers
MapE getAllOuterEndcapLayers() const
Definition: ETLNavigableLayer.h:79
ETLNavigableLayer::getInnerBarrelLayers
MapB getInnerBarrelLayers() const
Definition: ETLNavigableLayer.h:77
DetLayer
Definition: DetLayer.h:21
ETLNavigableLayer::theAllInnerEndcapLayers
MapE theAllInnerEndcapLayers
Definition: ETLNavigableLayer.h:111
ETLNavigableLayer::theInnerBarrelLayers
MapB theInnerBarrelLayers
Definition: ETLNavigableLayer.h:106
ETLNavigableLayer::setDetLayer
void setDetLayer(const DetLayer *) override
set DetLayer
Definition: ETLNavigableLayer.cc:140
MTDDetLayerMap.h
ETLNavigableLayer::nextLayers
std::vector< const DetLayer * > nextLayers(NavigationDirection dir) const override
NavigableLayer interface.
Definition: ETLNavigableLayer.cc:23
MTDNavigableLayer.h
ETLNavigableLayer::theInnerEndcapLayers
MapE theInnerEndcapLayers
Definition: ETLNavigableLayer.h:108
ETLNavigableLayer::pushResult
void pushResult(std::vector< const DetLayer * > &result, const MapB &map) const
Definition: ETLNavigableLayer.cc:94
ETLNavigableLayer::getAllInnerEndcapLayers
MapE getAllInnerEndcapLayers() const
Definition: ETLNavigableLayer.h:80
MTDNavigableLayer
Definition: MTDNavigableLayer.h:25
MapB
std::map< const BarrelDetLayer *, MTDEtaRange, MTDDetLayerComp > MapB
Definition: MTDDetLayerMap.h:36
ETLNavigableLayer::detLayer
const DetLayer * detLayer() const override
return DetLayer
Definition: ETLNavigableLayer.cc:138
ETLNavigableLayer::pushCompatibleResult
void pushCompatibleResult(std::vector< const DetLayer * > &result, const MapB &map, const FreeTrajectoryState &fts) const
Definition: ETLNavigableLayer.cc:120
ETLNavigableLayer::getOuterEndcapLayers
MapE getOuterEndcapLayers() const
Operations.
Definition: ETLNavigableLayer.h:75
ETLNavigableLayer::theAllInnerBarrelLayers
MapB theAllInnerBarrelLayers
Definition: ETLNavigableLayer.h:109
ETLNavigableLayer::ETLNavigableLayer
ETLNavigableLayer(const ForwardDetLayer *fdl, const MapB &innerBarrel, const MapE &outerEndcap, const MapE &innerEndcap, const MapB &allInnerBarrel, const MapE &allOuterEndcap, const MapE &allInnerEndcap)
Definition: ETLNavigableLayer.h:35
ETLNavigableLayer
Definition: ETLNavigableLayer.h:33
ETLNavigableLayer::setInwardCompatibleLinks
void setInwardCompatibleLinks(const MapB &, const MapE &)
Definition: ETLNavigableLayer.cc:148
ETLNavigableLayer::theDetLayer
const ForwardDetLayer * theDetLayer
Definition: ETLNavigableLayer.h:105
MTDEtaRange.h
NavigationDirection
NavigationDirection
Definition: NavigationDirection.h:4
ForwardDetLayer
Definition: ForwardDetLayer.h:22
FreeTrajectoryState
Definition: FreeTrajectoryState.h:27
ETLNavigableLayer::theAllOuterEndcapLayers
MapE theAllOuterEndcapLayers
Definition: ETLNavigableLayer.h:110
MapE
std::map< const ForwardDetLayer *, MTDEtaRange, MTDDetLayerComp > MapE
Definition: MTDDetLayerMap.h:37
PropagationDirection
PropagationDirection
Definition: PropagationDirection.h:4
ETLNavigableLayer::theOuterEndcapLayers
MapE theOuterEndcapLayers
Definition: ETLNavigableLayer.h:107
ETLNavigableLayer::ETLNavigableLayer
ETLNavigableLayer(const ForwardDetLayer *fdl, const MapE &outerEndcap)
Constructor with outer layers only.
Definition: ETLNavigableLayer.h:51
mps_fire.result
result
Definition: mps_fire.py:303
genParticles_cff.map
map
Definition: genParticles_cff.py:11
ETLNavigableLayer::getAllInnerBarrelLayers
MapB getAllInnerBarrelLayers() const
Definition: ETLNavigableLayer.h:81
DeadROC_duringRun.dir
dir
Definition: DeadROC_duringRun.py:23