1 #ifndef DataFormats_ForwardDetId_HGCSiliconDetId_H 2 #define DataFormats_ForwardDetId_HGCSiliconDetId_H 1 40 int waferUsign = (
waferU >= 0) ? 0 : 1;
41 int waferVsign = (
waferV >= 0) ? 0 : 1;
42 int zside = (zp < 0) ? 1 : 0;
57 <<
"Cannot initialize HGCSiliconDetId from " << std::hex <<
gen.rawId() <<
std::dec;
68 <<
"Cannot assign HGCSiliconDetId from " << std::hex <<
gen.rawId() <<
std::dec;
98 constexpr std::pair<int, int>
cellUV()
const {
return std::pair<int, int>(
cellU(),
cellV()); }
101 return (3 * (
cellV() -
N) + 2);
107 constexpr std::pair<int, int>
cellXY()
const {
return std::pair<int, int>(
cellX(),
cellY()); }
122 constexpr
void unpack(
int& ty,
int& zs,
int& ly,
int& wU,
int& wV,
int& cU,
int& cV)
const {
static constexpr uint32_t kHGCalCellUOffset
constexpr void unpack(int &ty, int &zs, int &ly, int &wU, int &wV, int &cU, int &cV) const
constexpr int cellV() const
constexpr int cellX() const
constexpr int waferUAbs() const
get the wafer #'s in u,v or in x,y
static constexpr uint32_t kHGCalCellVMask
constexpr int waferY() const
constexpr int waferVAbs() const
static constexpr uint32_t kHGCalTypeOffset
constexpr HGCSiliconDetId(uint32_t rawid)
constexpr HGCSiliconDetId & operator=(const DetId &gen)
static const int HGCalFineN
constexpr bool isHE() const
constexpr Detector det() const
get the detector field from this detid
constexpr std::pair< int, int > waferUV() const
constexpr DetId::Detector subdet() const
get the subdetector
static constexpr uint32_t kHGCalWaferUMask
constexpr int zside() const
get the z-side of the cell (1/-1)
static const int HGCalCoarseTrigger
constexpr std::pair< int, int > cellXY() const
static const HGCSiliconDetId Undefined
static constexpr uint32_t kHGCalWaferVOffset
Abs< T >::type abs(const T &t)
std::ostream & operator<<(std::ostream &, const HGCSiliconDetId &id)
static constexpr uint32_t kHGCalWaferUOffset
constexpr int layer() const
get the layer #
static const int HGCalCoarseN
constexpr int cellU() const
get the cell #'s in u,v or in x,y
static constexpr uint32_t kHGCalWaferVSignMask
constexpr HGCSiliconDetId geometryCell() const
constexpr int type() const
get the type
static constexpr uint32_t kHGCalTypeMask
static constexpr uint32_t kHGCalLayerOffset
static constexpr uint32_t kHGCalCellUMask
static constexpr uint32_t kHGCalZsideOffset
constexpr int waferX() const
constexpr HGCSiliconDetId moduleId() const
constexpr bool isForward() const
constexpr HGCSiliconDetId(DetId::Detector det, int zp, int type, int layer, int waferU, int waferV, int cellU, int cellV)
static constexpr uint32_t kHGCalLayerMask
constexpr int waferU() const
constexpr HGCSiliconDetId()
static constexpr uint32_t kHGCalWaferUSignMask
static constexpr uint32_t kHGCalWaferVMask
static constexpr uint32_t kHGCalWaferUSignOffset
static constexpr uint32_t kHGCalWaferVSignOffset
constexpr int triggerCellV() const
constexpr int triggerCellU() const
constexpr std::pair< int, int > triggerCellUV() const
constexpr int cellY() const
constexpr std::pair< int, int > cellUV() const
static constexpr uint32_t kHGCalZsideMask
static const int HGCalFineTrigger
constexpr std::pair< int, int > waferXY() const
constexpr bool isEE() const
consistency check : no bits left => no overhead
constexpr int waferV() const
static constexpr uint32_t kHGCalCellVOffset
constexpr HGCSiliconDetId(const DetId &gen)