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