147 bool isPositive =
false;
152 for (
int ich = ich1; ich < ich2; ich++) {
165 else if (
id.channel() <= 0)
184 std::vector<DetId> vNeighborsDetId;
188 bool isPositive =
false;
189 if (zdcId.
zside() == 1)
193 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
194 return vNeighborsDetId;
198 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
199 return vNeighborsDetId;
202 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
204 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
206 return vNeighborsDetId;
210 std::vector<DetId> vNeighborsDetId;
214 bool isPositive =
false;
215 if (zdcId.
zside() == 1)
219 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
220 return vNeighborsDetId;
224 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
225 return vNeighborsDetId;
228 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
230 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
233 bool isPositive =
false;
234 if (zdcId.
zside() == 1)
238 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
239 return vNeighborsDetId;
243 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
244 return vNeighborsDetId;
248 bool isPositive =
false;
249 if (zdcId.
zside() == 1)
253 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
254 return vNeighborsDetId;
258 vNeighborsDetId.emplace_back(zdcDetId.
rawId());
259 return vNeighborsDetId;
262 return vNeighborsDetId;
266 std::cout <<
"ZdcTopology::east() not yet implemented" << std::endl;
267 std::vector<DetId> vNeighborsDetId;
268 return vNeighborsDetId;
272 std::cout <<
"ZdcTopology::west() not yet implemented" << std::endl;
273 std::vector<DetId> vNeighborsDetId;
274 return vNeighborsDetId;
278 std::cout <<
"ZdcTopology::north() not yet implemented" << std::endl;
279 std::vector<DetId> vNeighborsDetId;
280 return vNeighborsDetId;
283 std::cout <<
"ZdcTopology::south() not yet implemented" << std::endl;
284 std::vector<DetId> vNeighborsDetId;
285 return vNeighborsDetId;
288 std::cout <<
"ZdcTopology::up() not yet implemented" << std::endl;
289 std::vector<DetId> vNeighborsDetId;
290 return vNeighborsDetId;
293 std::cout <<
"ZdcTopology::down() not yet implemented" << std::endl;
294 std::vector<DetId> vNeighborsDetId;
295 return vNeighborsDetId;
static const int ICH_LUM_MAX
static const int ICH_EM_MAX
std::vector< DetId > down(const DetId &id) const override
void exclude(const HcalZDCDetId &id)
virtual std::vector< DetId > transverse(const DetId &id) const
uint16_t *__restrict__ id
int zside() const
get the z-side of the cell (1/-1)
constexpr uint32_t rawId() const
get the raw id
bool validRaw(const HcalZDCDetId &id) const
std::vector< DetId > up(const DetId &id) const override
std::vector< DetId > north(const DetId &id) const override
virtual bool valid(const HcalZDCDetId &id) const
int lastCell(HcalZDCDetId::Section section) const
static const int ICH_RPD_MAX
virtual unsigned int ncells() const
return a count of valid cells (for dense indexing use)
std::vector< DetId > south(const DetId &id) const override
Abs< T >::type abs(const T &t)
std::vector< HcalZDCDetId > exclusionList_
std::vector< DetId > east(const DetId &id) const override
std::vector< DetId > west(const DetId &id) const override
int channel() const
get the channel
Section section() const
get the section
bool isExcluded(const HcalZDCDetId &id) const
__host__ __device__ constexpr RandomIt lower_bound(RandomIt first, RandomIt last, const T &value, Compare comp={})
int firstCell(HcalZDCDetId::Section section) const
static const int ICH_HAD_MAX
virtual std::vector< DetId > longitudinal(const DetId &id) const