122 bool isPositive =
false;
128 for (
int imod = imod1; imod < imod2; imod++) {
143 std::vector<DetId> vNeighborsDetId;
147 bool isPositive =
false;
148 if (castorId.
zside() == 1)
150 if (castorId.
sector() == 1) {
152 vNeighborsDetId.emplace_back(castorDetId.
rawId());
153 return vNeighborsDetId;
155 if (castorId.
sector() == 16) {
157 vNeighborsDetId.emplace_back(castorDetId.
rawId());
158 return vNeighborsDetId;
161 vNeighborsDetId.emplace_back(castorDetId.
rawId());
163 vNeighborsDetId.emplace_back(castorDetId.
rawId());
165 return vNeighborsDetId;
169 std::vector<DetId> vNeighborsDetId;
173 bool isPositive =
false;
174 if (castorId.
zside() == 1)
176 if (castorId.
module() == 1) {
178 vNeighborsDetId.emplace_back(castorDetId.
rawId());
179 return vNeighborsDetId;
183 vNeighborsDetId.emplace_back(castorDetId.
rawId());
184 return vNeighborsDetId;
187 vNeighborsDetId.emplace_back(castorDetId.
rawId());
189 vNeighborsDetId.emplace_back(castorDetId.
rawId());
192 bool isPositive =
false;
193 if (castorId.
zside() == 1)
195 if (castorId.
module() == 1) {
197 vNeighborsDetId.emplace_back(castorDetId.
rawId());
198 return vNeighborsDetId;
202 vNeighborsDetId.emplace_back(castorDetId.
rawId());
203 return vNeighborsDetId;
206 return vNeighborsDetId;
210 edm::LogVerbatim(
"ForwardGeom") <<
"CastorTopology::east() not yet implemented";
211 std::vector<DetId> vNeighborsDetId;
212 return vNeighborsDetId;
216 edm::LogVerbatim(
"ForwardGeom") <<
"CastorTopology::west() not yet implemented";
217 std::vector<DetId> vNeighborsDetId;
218 return vNeighborsDetId;
222 edm::LogVerbatim(
"ForwardGeom") <<
"CastorTopology::north() not yet implemented";
223 std::vector<DetId> vNeighborsDetId;
224 return vNeighborsDetId;
227 edm::LogVerbatim(
"ForwardGeom") <<
"CastorTopology::south() not yet implemented";
228 std::vector<DetId> vNeighborsDetId;
229 return vNeighborsDetId;
232 edm::LogVerbatim(
"ForwardGeom") <<
"CastorTopology::up() not yet implemented";
233 std::vector<DetId> vNeighborsDetId;
234 return vNeighborsDetId;
237 edm::LogVerbatim(
"ForwardGeom") <<
"CastorTopology::down() not yet implemented";
238 std::vector<DetId> vNeighborsDetId;
239 return vNeighborsDetId;
static bool validDetId(Section iSection, bool posEta, int iSector, int iMod)
Log< level::Info, true > LogVerbatim
bool isExcluded(const HcalCastorDetId &id) const
static const int MODULE_EM_MAX
std::vector< DetId > down(const DetId &id) const override
virtual std::vector< DetId > incModule(const DetId &id) const
static const int MODULE_HAD_MAX
virtual bool valid(const HcalCastorDetId &id) const
int module() const
get the module (1-2 for EM, 1-12 for HAD)
int zside() const
get the z-side of the cell (1/-1)
virtual bool validRaw(const HcalCastorDetId &id) const
int sector() const
get the sector (1-16)
std::vector< DetId > west(const DetId &id) const override
std::vector< DetId > north(const DetId &id) const override
constexpr uint32_t rawId() const
get the raw id
virtual unsigned int ncells() const
return a count of valid cells (for dense indexing use)
Section section() const
get the section
virtual std::vector< DetId > incSector(const DetId &id) const
std::vector< DetId > up(const DetId &id) const override
std::vector< DetId > south(const DetId &id) const override
void exclude(const HcalCastorDetId &id)
std::vector< HcalCastorDetId > exclusionList_
int firstCell(HcalCastorDetId::Section section) const
int lastCell(HcalCastorDetId::Section section) const
std::vector< DetId > east(const DetId &id) const override