CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HGCalTileIndex.cc
Go to the documentation of this file.
3 
4 int32_t HGCalTileIndex::tileIndex(int32_t layer, int32_t ring, int32_t phi) {
5  int32_t id(0);
9  return id;
10 }
11 
12 int32_t HGCalTileIndex::tileLayer(int32_t id) {
14 }
15 
16 int32_t HGCalTileIndex::tileRing(int32_t id) {
18 }
19 
20 int32_t HGCalTileIndex::tilePhi(int32_t id) {
22 }
23 
24 int32_t HGCalTileIndex::tileProperty(int32_t type, int32_t sipm) {
26  ((sipm % HGCalProperty::kHGCalFactor) * HGCalProperty::kHGCalOffsetSiPM));
27 }
28 
29 int32_t HGCalTileIndex::tileType(int32_t property) {
31 }
32 
33 int32_t HGCalTileIndex::tileSiPM(int32_t property) {
35 }
36 
37 int32_t HGCalTileIndex::tilePack(int32_t ly, int32_t k1, int32_t k2) {
38  return (
39  ((ly % HGCalProperty::kHGCalTilePack) * HGCalProperty::kHGCalTilePack + (k1 % HGCalProperty::kHGCalTilePack)) *
40  HGCalProperty::kHGCalTilePack +
41  (k2 % HGCalProperty::kHGCalTilePack));
42 }
43 
44 std::tuple<int32_t, int32_t, int32_t> HGCalTileIndex::tileUnpack(int32_t index) {
45  int32_t ly =
48  int32_t k2 = (index % HGCalProperty::kHGCalTilePack);
49  return std::make_tuple(ly, k1, k2);
50 }
51 
52 bool HGCalTileIndex::tileExist(const int32_t* hex, int32_t zside, int32_t iphi) {
53  int32_t phi(iphi - 1);
54  if (zside > 0) {
58  }
59  int32_t jj = phi % HGCalProperty::kHGCalTilePhisBy3;
60  int32_t iw = jj / HGCalProperty::kHGCalTilePhisBy12;
62  bool ok = (hex[iw] & (1 << ibit));
63  return ok;
64 }
constexpr int32_t kHGCalTilePhisBy3
Definition: HGCalProperty.h:47
int32_t tileRing(int32_t index)
uint16_t *__restrict__ id
constexpr int32_t kHGCalTilePhisBy12
Definition: HGCalProperty.h:48
int32_t tileType(int32_t)
int zside(DetId const &)
constexpr std::array< uint8_t, layerIndexSize > layer
int32_t tileIndex(int32_t layer, int32_t ring, int32_t phi)
constexpr int32_t kHGCalRingMask
Definition: HGCalProperty.h:34
int32_t tilePhi(int32_t index)
std::tuple< int32_t, int32_t, int32_t > tileUnpack(int32_t index)
constexpr int32_t kHGCalTilePhis
Definition: HGCalProperty.h:45
constexpr int32_t kHGCalPhiOffset
Definition: HGCalProperty.h:31
constexpr int32_t kHGCalLayerOffset
Definition: HGCalProperty.h:28
int32_t tilePack(int32_t ly, int32_t k1, int32_t k2)
int32_t tileProperty(int32_t, int32_t)
bool tileExist(const int32_t *hex, int32_t zside, int32_t phi)
constexpr int32_t kHGCalOffsetSiPM
Definition: HGCalProperty.h:42
constexpr int32_t kHGCalTilePhisBy2
Definition: HGCalProperty.h:46
constexpr int32_t kHGCalLayerMask
Definition: HGCalProperty.h:29
constexpr int32_t kHGCalPhiMask
Definition: HGCalProperty.h:32
constexpr int32_t kHGCalRingOffset
Definition: HGCalProperty.h:33
int32_t tileSiPM(int32_t)
constexpr int32_t kHGCalTilePack
Definition: HGCalProperty.h:43
constexpr int32_t kHGCalFactor
Definition: HGCalProperty.h:36
int32_t tileLayer(int32_t index)
constexpr int32_t kHGCalOffsetType
Definition: HGCalProperty.h:41