CMS 3D CMS Logo

MuonForwardNavigableLayer.h
Go to the documentation of this file.
1 #ifndef Navigation_MuonForwardNavigableLayer_H
2 #define Navigation_MuonForwardNavigableLayer_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 MuonForwardNavigableLayer 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  MuonForwardNavigableLayer(const ForwardDetLayer* fdl, const MapE& outerEndcap)
52  : theDetLayer(fdl), theOuterEndcapLayers(outerEndcap) {}
54  MuonForwardNavigableLayer(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
MuonForwardNavigableLayer::MuonForwardNavigableLayer
MuonForwardNavigableLayer(const ForwardDetLayer *fdl, const MapE &outerEndcap)
Constructor with outer layers only.
Definition: MuonForwardNavigableLayer.h:51
DetLayer
Definition: DetLayer.h:21
MuonForwardNavigableLayer::theInnerBarrelLayers
MapB theInnerBarrelLayers
Definition: MuonForwardNavigableLayer.h:106
MuonNavigableLayer.h
MuonForwardNavigableLayer::detLayer
const DetLayer * detLayer() const override
return DetLayer
Definition: MuonForwardNavigableLayer.cc:141
MuonForwardNavigableLayer::setInwardLinks
void setInwardLinks(const MapB &, const MapE &)
set inward links
Definition: MuonForwardNavigableLayer.cc:147
MuonForwardNavigableLayer::theAllInnerEndcapLayers
MapE theAllInnerEndcapLayers
Definition: MuonForwardNavigableLayer.h:111
MuonForwardNavigableLayer::pushResult
void pushResult(std::vector< const DetLayer * > &result, const MapB &map) const
Definition: MuonForwardNavigableLayer.cc:97
MuonEtaRange.h
MuonForwardNavigableLayer::getAllOuterEndcapLayers
MapE getAllOuterEndcapLayers() const
Definition: MuonForwardNavigableLayer.h:79
MuonDetLayerMap.h
MuonForwardNavigableLayer::getAllInnerBarrelLayers
MapB getAllInnerBarrelLayers() const
Definition: MuonForwardNavigableLayer.h:81
MuonForwardNavigableLayer::theDetLayer
const ForwardDetLayer * theDetLayer
Definition: MuonForwardNavigableLayer.h:105
MuonForwardNavigableLayer::theOuterEndcapLayers
MapE theOuterEndcapLayers
Definition: MuonForwardNavigableLayer.h:107
MuonForwardNavigableLayer::pushCompatibleResult
void pushCompatibleResult(std::vector< const DetLayer * > &result, const MapB &map, const FreeTrajectoryState &fts) const
Definition: MuonForwardNavigableLayer.cc:123
MuonForwardNavigableLayer::setInwardCompatibleLinks
void setInwardCompatibleLinks(const MapB &, const MapE &)
Definition: MuonForwardNavigableLayer.cc:151
MapB
std::map< const BarrelDetLayer *, MTDEtaRange, MTDDetLayerComp > MapB
Definition: MTDDetLayerMap.h:36
MuonForwardNavigableLayer::MuonForwardNavigableLayer
MuonForwardNavigableLayer(const ForwardDetLayer *fdl, const MapB &innerBarrel, const MapE &outerEndcap, const MapE &innerEndcap, const MapB &allInnerBarrel, const MapE &allOuterEndcap, const MapE &allInnerEndcap)
Definition: MuonForwardNavigableLayer.h:35
MuonForwardNavigableLayer::getInnerEndcapLayers
MapE getInnerEndcapLayers() const
Definition: MuonForwardNavigableLayer.h:76
MuonForwardNavigableLayer::MuonForwardNavigableLayer
MuonForwardNavigableLayer(const ForwardDetLayer *fdl, const MapE &outerEndcap, const MapE &allOuterEndcap)
Constructor with all outer layers only.
Definition: MuonForwardNavigableLayer.h:54
NavigationDirection
NavigationDirection
Definition: NavigationDirection.h:4
ForwardDetLayer
Definition: ForwardDetLayer.h:22
FreeTrajectoryState
Definition: FreeTrajectoryState.h:27
MapE
std::map< const ForwardDetLayer *, MTDEtaRange, MTDDetLayerComp > MapE
Definition: MTDDetLayerMap.h:37
PropagationDirection
PropagationDirection
Definition: PropagationDirection.h:4
MuonForwardNavigableLayer::setDetLayer
void setDetLayer(const DetLayer *) override
set DetLayer
Definition: MuonForwardNavigableLayer.cc:143
MuonForwardNavigableLayer
Definition: MuonForwardNavigableLayer.h:33
MuonForwardNavigableLayer::compatibleLayers
std::vector< const DetLayer * > compatibleLayers(NavigationDirection dir) const override
Definition: MuonForwardNavigableLayer.cc:62
mps_fire.result
result
Definition: mps_fire.py:311
MuonNavigableLayer
Definition: MuonNavigableLayer.h:25
MuonForwardNavigableLayer::theInnerEndcapLayers
MapE theInnerEndcapLayers
Definition: MuonForwardNavigableLayer.h:108
genParticles_cff.map
map
Definition: genParticles_cff.py:11
MuonForwardNavigableLayer::getAllInnerEndcapLayers
MapE getAllInnerEndcapLayers() const
Definition: MuonForwardNavigableLayer.h:80
MuonForwardNavigableLayer::getInnerBarrelLayers
MapB getInnerBarrelLayers() const
Definition: MuonForwardNavigableLayer.h:77
MuonForwardNavigableLayer::theAllOuterEndcapLayers
MapE theAllOuterEndcapLayers
Definition: MuonForwardNavigableLayer.h:110
MuonForwardNavigableLayer::theAllInnerBarrelLayers
MapB theAllInnerBarrelLayers
Definition: MuonForwardNavigableLayer.h:109
MuonForwardNavigableLayer::getOuterEndcapLayers
MapE getOuterEndcapLayers() const
Operations.
Definition: MuonForwardNavigableLayer.h:75
DeadROC_duringRun.dir
dir
Definition: DeadROC_duringRun.py:23
MuonForwardNavigableLayer::nextLayers
std::vector< const DetLayer * > nextLayers(NavigationDirection dir) const override
NavigableLayer interface.
Definition: MuonForwardNavigableLayer.cc:25