Cellがどの検出器でなったかという情報を保存するために決めた定義
[コード]
// AtlasID bit
// 1 : lar
// 2 : lar_em
// 3 : lar_hec
// 4 : lar_fcal
// 5 : tile
unsigned ATbit1 = AtlasID.is_lar(cellID) ? (1<<0) : 0;
unsigned ATbit2 = AtlasID.is_lar_em(cellID) ? (1<<1) : 0;
unsigned ATbit3 = AtlasID.is_lar_hec(cellID) ? (1<<2) : 0;
unsigned ATbit4 = AtlasID.is_lar_fcal(cellID) ? (1<<3) : 0;
unsigned ATbit5 = AtlasID.is_tile(cellID) ? (1<<4) : 0;
unsigned ATbit = (ATbit1 | ATbit2 | ATbit3 | ATbit4 | ATbit5);
// EM bit
// 1-3 : sampling (if all bits are on, it is very strange.)
// 4 : barrel
// 5 : endcap
// 6 : endcap_inner
// 7 : endcap_outer
unsigned EMbit1 = emid.sampling(cellID) >= 0 ? unsigned(emid.sampling(cellID)) : 7;
unsigned EMbit3 = emid.is_em_barrel(cellID) ? (1<<3) : 0;
unsigned EMbit4 = emid.is_em_endcap(cellID) ? (1<<4) : 0;
unsigned EMbit5 = emid.is_em_endcap_inner(cellID) ? (1<<5) : 0;
unsigned EMbit6 = emid.is_em_endcap_outer(cellID) ? (1<<6) : 0;
unsigned EMbit = (EMbit1 | EMbit3 | EMbit4 | EMbit5 | EMbit6);
// Tile bit
// 1-5 : sample (if all bits are on, it is very strange.)
// 6 : tile
// 7 : barrel
// 8 : extbarrel
// 9 : gap
// 10 : gapscin
unsigned TLbit1 = tileid.sample(cellID) >= 0 ? unsigned(tileid.sample(cellID)) : 31;
unsigned TLbit5 = tileid.is_tile(cellID) ? (1<<5) : 0;
unsigned TLbit6 = tileid.is_tile_barrel(cellID) ? (1<<6) : 0;
unsigned TLbit7 = tileid.is_tile_extbarrel(cellID) ? (1<<7) : 0;
unsigned TLbit8 = tileid.is_tile_gap(cellID) ? (1<<8) : 0;
unsigned TLbit9 = tileid.is_tile_gapscin(cellID) ? (1<<9) : 0;
unsigned TLbit = (TLbit1 | TLbit5 | TLbit6 | TLbit7 | TLbit8 | TLbit9);
unsigned CombBit = (ATbit | (EMbit<<5) | (TLbit<<12));
[まとめ]
// AtlasID bit
// 1 1 : lar
// 2 2 : lar_em
// 3 3 : lar_hec
// 4 4 : lar_fcal
// 5 5 : tile
//
// EM bit
// 6-8 1-3 : sampling (if all bits are on, it is very strange.)
// 9 4 : barrel
// 10 5 : endcap
// 11 6 : endcap_inner
// 12 7 : endcap_outer
//
// Tile bit
// 13-17 1-5 : sample (if all bits are on, it is very strange.)
// 18 6 : tile
// 19 7 : barrel
// 20 8 : extbarrel
// 21 9 : gap
// 22 10 : gapscin