25 edm::LogVerbatim(
"HGCalGeom") <<
"Number of Cells " << numberOfCells <<
":" << numberExpected <<
" for sub-detector " 28 geom->allocateCorners(numberOfCells);
45 unsigned int kount(0);
58 double xx = (
zside > 0) ?
w.first : -
w.first;
59 CLHEP::Hep3Vector h3v(
xx,
w.second, mytr.
h3v.z());
60 const HepGeom::Transform3D ht3d(mytr.
hr, h3v);
62 edm::LogVerbatim(
"HGCalGeom") <<
"HGCalTBGeometryLoader:: Wafer:Type " << wafer <<
":" <<
type <<
" DetId " 64 << ht3d.getTranslation() <<
" and " << ht3d.getRotation();
85 if (
counter != numberExpected) {
86 edm::LogError(
"HGCalGeom") <<
"Inconsistent # of cells: expected " << numberExpected <<
":" << numberOfCells
94 const HepGeom::Transform3D& ht3d,
109 (corners[0].
x() + corners[1].
x() + corners[2].
x() + corners[3].
x() + corners[4].
x() + corners[5].
x()),
111 (corners[0].
y() + corners[1].
y() + corners[2].
y() + corners[3].
y() + corners[4].
y() + corners[5].
y()),
113 (corners[0].
z() + corners[1].
z() + corners[2].
z() + corners[3].
z() + corners[4].
z() + corners[5].
z()));
117 (corners[6].
x() + corners[7].
x() + corners[8].
x() + corners[9].
x() + corners[10].
x() + corners[11].
x()),
119 (corners[6].
y() + corners[7].
y() + corners[8].
y() + corners[9].
y() + corners[10].
y() + corners[11].
y()),
121 (corners[6].
z() + corners[7].
z() + corners[8].
z() + corners[9].
z() + corners[10].
z() + corners[11].
z()));
128 geom->newCell(front, back, corners[0], parmPtr, detId);
static void createCorners(const std::vector< CCGFloat > &pv, const Tr3D &tr, std::vector< GlobalPoint > &co)
unsigned int totalGeomModules() const
Log< level::Info, true > LogVerbatim
static constexpr unsigned int k_NumberOfParametersPerHex
bool waferInLayer(int wafer, int lay, bool reco) const
ForwardSubdetector subDetector() const
HGCalTBGeometry * build(const HGCalTBTopology &)
Log< level::Error, false > LogError
static constexpr unsigned int ncorner_
int waferTypeT(int wafer) const
void buildGeom(const ParmVec &, const HepGeom::Transform3D &, const DetId &, HGCalTBGeometry *)
constexpr std::array< uint8_t, layerIndexSize< TrackerTraits > > layer
std::vector< float > ParmVec
static constexpr uint32_t k_R
static constexpr uint32_t k_r
void swap(edm::DataFrameContainer &lhs, edm::DataFrameContainer &rhs)
unsigned int volumes() const
std::vector< float > ParmVec
static const CCGFloat * getParmPtr(const std::vector< CCGFloat > &vd, ParMgr *mgr, ParVecVec &pvv)
CaloCellGeometry::CCGFloat CCGFloat
std::pair< double, double > waferPosition(int wafer, bool reco) const
static constexpr unsigned int ncornerBy2_
double cellSizeHex(int type) const
unsigned int getTrFormN() const
const HGCalTBDDDConstants & dddConstants() const
HGCalTBParameters::hgtrap getModule(unsigned int k, bool hexType, bool reco) const
static constexpr uint32_t k_dZ
constexpr uint32_t rawId() const
get the raw id
unsigned int allGeomModules() const
static std::atomic< unsigned int > counter
static constexpr unsigned int k_NumberOfShapes
HGCalTBParameters::hgtrform getTrForm(unsigned int k) const
static constexpr double oneBySix_
CaloCellGeometry::CCGFloat CCGFloat