25 std::vector<const DetLayer*>
result;
28 pushResult(result, theOuterBarrelLayers);
29 pushResult(result, theOuterBackwardLayers);
30 pushResult(result, theOuterForwardLayers);
32 pushResult(result, theInnerBarrelLayers);
33 reverse(result.begin(), result.end());
34 pushResult(result, theInnerBackwardLayers);
35 pushResult(result, theInnerForwardLayers);
38 result.reserve(result.size());
44 std::vector<const DetLayer*>
result;
47 pushResult(result, theOuterBarrelLayers, fts);
48 pushResult(result, theOuterBackwardLayers, fts);
49 pushResult(result, theOuterForwardLayers, fts);
51 pushResult(result, theInnerBarrelLayers, fts);
52 reverse(result.begin(), result.end());
53 pushResult(result, theInnerBackwardLayers, fts);
54 pushResult(result, theInnerForwardLayers, fts);
56 result.reserve(result.size());
61 std::vector<const DetLayer*>
result;
64 pushResult(result, theAllOuterBarrelLayers);
65 pushResult(result, theAllOuterBackwardLayers);
66 pushResult(result, theAllOuterForwardLayers);
68 pushResult(result, theAllInnerBarrelLayers);
69 reverse(result.begin(), result.end());
70 pushResult(result, theAllInnerBackwardLayers);
71 pushResult(result, theAllInnerForwardLayers);
74 result.reserve(result.size());
80 std::vector<const DetLayer*>
result;
83 pushCompatibleResult(result, theAllOuterBarrelLayers, fts);
84 pushCompatibleResult(result, theAllOuterBackwardLayers, fts);
85 pushCompatibleResult(result, theAllOuterForwardLayers, fts);
87 pushCompatibleResult(result, theAllInnerBarrelLayers, fts);
88 reverse(result.begin(), result.end());
89 pushCompatibleResult(result, theAllInnerBackwardLayers, fts);
90 pushCompatibleResult(result, theAllInnerForwardLayers, fts);
92 result.reserve(result.size());
97 for (
MapBI i = map.begin();
i != map.end();
i++)
98 result.push_back((*i).first);
102 for (
MapEI i = map.begin();
i != map.end();
i++)
103 result.push_back((*i).first);
109 for (
MapBI i = map.begin();
i != map.end();
i++)
111 result.push_back((*i).first);
117 for (
MapEI i = map.begin();
i != map.end();
i++)
119 result.push_back((*i).first);
126 for (
MapBI i = map.begin();
i != map.end();
i++)
127 if ((*i).second.isCompatible(range))
128 result.push_back((*i).first);
135 for (
MapEI i = map.begin();
i != map.end();
i++)
136 if ((*i).second.isCompatible(range))
137 result.push_back((*i).first);
143 edm::LogError(
"BTLNavigableLayer") <<
"BTLNavigableLayer::setDetLayer called!! " << endl;
MapB::const_iterator MapBI
std::map< const BarrelDetLayer *, MTDEtaRange, MTDDetLayerComp > MapB
void setDetLayer(const DetLayer *) override
set DetLayer
void pushCompatibleResult(std::vector< const DetLayer * > &result, const MapB &map, const FreeTrajectoryState &fts) const
GlobalPoint position() const
std::vector< const DetLayer * > compatibleLayers(NavigationDirection dir) const override
MapE::const_iterator MapEI
std::vector< const DetLayer * > nextLayers(NavigationDirection dir) const override
NavigableLayer interface.
void setInwardLinks(const MapB &)
set inward links
const DetLayer * detLayer() const override
return DetLayer
void setInwardCompatibleLinks(const MapB &)
void pushResult(std::vector< const DetLayer * > &result, const MapB &map) const
std::map< const ForwardDetLayer *, MTDEtaRange, MTDDetLayerComp > MapE