1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
#include "Geometry/CaloTopology/interface/EcalBarrelTopology.h"
EBDetId EcalBarrelTopology::incrementIeta(const EBDetId& id) const {
if (!(theGeom_->present(id)))
return EBDetId(0);
EBDetId nextPoint;
if (id.ieta() == -1) {
if (EBDetId::validDetId(1, id.iphi()))
nextPoint = EBDetId(1, id.iphi());
else
return EBDetId(0);
} else {
if (EBDetId::validDetId(id.ieta() + 1, id.iphi()))
nextPoint = EBDetId(id.ieta() + 1, id.iphi());
else
return EBDetId(0);
}
if (theGeom_->present(nextPoint))
return nextPoint;
else
return EBDetId(0);
}
EBDetId EcalBarrelTopology::decrementIeta(const EBDetId& id) const {
if (!(theGeom_->present(id)))
return EBDetId(0);
EBDetId nextPoint;
if (id.ieta() == 1) {
if (EBDetId::validDetId(-1, id.iphi()))
nextPoint = EBDetId(-1, id.iphi());
else
return EBDetId(0);
} else {
if (EBDetId::validDetId(id.ieta() - 1, id.iphi()))
nextPoint = EBDetId(id.ieta() - 1, id.iphi());
else
return EBDetId(0);
}
if (theGeom_->present(nextPoint))
return nextPoint;
else
return EBDetId(0);
}
EBDetId EcalBarrelTopology::incrementIphi(const EBDetId& id) const {
if (!(theGeom_->present(id)))
return EBDetId(0);
EBDetId nextPoint;
if (id.iphi() == EBDetId::MAX_IPHI) {
if (EBDetId::validDetId(id.ieta(), EBDetId::MIN_IPHI))
nextPoint = EBDetId(id.ieta(), EBDetId::MIN_IPHI);
else
return EBDetId(0);
} else {
if (EBDetId::validDetId(id.ieta(), id.iphi() + 1))
nextPoint = EBDetId(id.ieta(), id.iphi() + 1);
else
return EBDetId(0);
}
if (theGeom_->present(nextPoint))
return nextPoint;
else
return EBDetId(0);
}
EBDetId EcalBarrelTopology::decrementIphi(const EBDetId& id) const {
if (!(theGeom_->present(id)))
return EBDetId(0);
EBDetId nextPoint;
if (id.iphi() == EBDetId::MIN_IPHI) {
if (EBDetId::validDetId(id.ieta(), EBDetId::MAX_IPHI))
nextPoint = EBDetId(id.ieta(), EBDetId::MAX_IPHI);
else
return EBDetId(0);
} else {
if (EBDetId::validDetId(id.ieta(), id.iphi() - 1))
nextPoint = EBDetId(id.ieta(), id.iphi() - 1);
else
return EBDetId(0);
}
if (theGeom_->present(nextPoint))
return nextPoint;
else
return EBDetId(0);
}
|