CMS 3D CMS Logo

HGCSiliconDetIdToModule.cc
Go to the documentation of this file.
2 
4 
5 std::vector<HGCSiliconDetId> HGCSiliconDetIdToModule::getDetIds(HGCSiliconDetId const& id) const {
6  std::vector<HGCSiliconDetId> ids;
7  int nCells = (id.type() == 0) ? HGCSiliconDetId::HGCalFineN : HGCSiliconDetId::HGCalCoarseN;
8  for (int u = 0; u < 2 * nCells; ++u) {
9  for (int v = 0; v < 2 * nCells; ++v) {
10  if (((v - u) < nCells) && (u - v) <= nCells) {
11  HGCSiliconDetId newId(id.det(), id.zside(), id.type(), id.layer(), id.waferU(), id.waferV(), u, v);
12  ids.emplace_back(newId);
13  }
14  }
15  }
16  return ids;
17 }
18 
19 std::vector<HGCalTriggerDetId> HGCSiliconDetIdToModule::getDetTriggerIds(HGCSiliconDetId const& id) const {
20  std::vector<HGCalTriggerDetId> ids;
22  int subdet = (id.det() == DetId::HGCalEE) ? HGCalEETrigger : HGCalHSiTrigger;
23  for (int u = 0; u < 2 * nCells; ++u) {
24  for (int v = 0; v < 2 * nCells; ++v) {
25  if (((v - u) < nCells) && (u - v) <= nCells) {
26  HGCalTriggerDetId newId(subdet, id.zside(), id.type(), id.layer(), id.waferU(), id.waferV(), u, v);
27  ids.emplace_back(newId);
28  }
29  }
30  }
31  return ids;
32 }
type
Definition: HCALResponse.h:21
std::vector< HGCalTriggerDetId > getDetTriggerIds(HGCSiliconDetId const &id) const
int zside(DetId const &)
static const int HGCalFineN
std::vector< HGCSiliconDetId > getDetIds(HGCSiliconDetId const &id) const
static const int HGCalCoarseN
static const int HGCalFineTrigger