1 #ifndef GEOMETRY_CALOTOPOLOGY_ECALBARRELTOPOLOGY_H
2 #define GEOMETRY_CALOTOPOLOGY_ECALBARRELTOPOLOGY_H 1
27 std::vector<DetId>
north(
const DetId&
id)
const override {
29 std::vector<DetId> vNeighborsDetId;
31 vNeighborsDetId.emplace_back(
DetId(nextId.
rawId()));
32 return vNeighborsDetId;
37 std::vector<DetId>
south(
const DetId&
id)
const override {
39 std::vector<DetId> vNeighborsDetId;
41 vNeighborsDetId.emplace_back(
DetId(nextId.
rawId()));
42 return vNeighborsDetId;
47 std::vector<DetId>
east(
const DetId&
id)
const override {
49 std::vector<DetId> vNeighborsDetId;
51 vNeighborsDetId.emplace_back(
DetId(nextId.
rawId()));
52 return vNeighborsDetId;
57 std::vector<DetId>
west(
const DetId&
id)
const override {
59 std::vector<DetId> vNeighborsDetId;
61 vNeighborsDetId.emplace_back(
DetId(nextId.
rawId()));
62 return vNeighborsDetId;
65 std::vector<DetId>
up(
const DetId& )
const override {
66 std::cout <<
"EcalBarrelTopology::up() not yet implemented" << std::endl;
67 std::vector<DetId> vNeighborsDetId;
68 return vNeighborsDetId;
71 std::vector<DetId>
down(
const DetId& )
const override {
72 std::cout <<
"EcalBarrelTopology::down() not yet implemented" << std::endl;
73 std::vector<DetId> vNeighborsDetId;
74 return vNeighborsDetId;
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
DetId goEast(const DetId &id) const override
move the Topology east (negative ieta)
DetId goWest(const DetId &id) const override
move the Topology west (positive ieta)
std::vector< DetId > south(const DetId &id) const override
constexpr uint32_t rawId() const
get the raw id
std::vector< DetId > up(const DetId &) const override
DetId goSouth(const DetId &id) const override
move the Topology south (decrement iphi)
~EcalBarrelTopology() override
virtual destructor
std::vector< DetId > down(const DetId &) const override
const CaloSubdetectorGeometry * theGeom_
std::vector< DetId > east(const DetId &id) const override
EBDetId decrementIeta(const EBDetId &) const
move the nagivator to smaller ieta (more negative z) (stops at end of barrel and returns null) ...
std::vector< DetId > west(const DetId &id) const override
EBDetId decrementIphi(const EBDetId &) const
move the nagivator to smaller iphi (wraps around the barrel)
EBDetId incrementIphi(const EBDetId &) const
move the nagivator to larger iphi (wraps around the barrel)
EcalBarrelTopology(CaloGeometry const &theGeom)
create a new Topology from geometry
std::vector< DetId > north(const DetId &id) const override
EBDetId incrementIeta(const EBDetId &) const
move the nagivator to larger ieta (more positive z) (stops at end of barrel and returns null) ...
DetId goNorth(const DetId &id) const override
move the Topology north (increment iphi)
EcalBarrelTopology()
create a new Topology