19 std::once_flag printOnce;
22 const float TrackerModule::invRoot12 =
sqrt(1. / 12.);
30 : moduleTypeCfg_(moduleTypeCfg) {
75 unsigned int iWheel = trackerTopology->
tidWheel(detId);
76 if (iWheel >= 3 && iWheel <= 5)
83 float deltaZ = (R1 - R0 > 0) ? (Z1 - Z0) : -(Z1 -
Z0);
106 unsigned int lay = (layerId < 20) ? layerId : layerId - 10;
121 if (lay < 1 || lay > 7)
122 throw cms::Exception(
"LogicError") <<
"TrackerModule: Reduced layer ID out of expected range";
130 float pitch,
float space,
bool barrel,
bool tiltedBarrel,
bool psModule)
const {
133 unsigned int moduleType = 999;
134 constexpr
float tol = 0.001;
144 if (moduleType == 999) {
145 std::stringstream
text;
146 text <<
"WARNING: TrackerModule found tracker module type unknown to firmware: pitch=" << pitch
147 <<
" separation=" << space <<
" barrel=" << barrel <<
" tilted=" << tiltedBarrel <<
" PS=" <<
psModule;
static unsigned int calcLayerIdReduced(unsigned int layerId)
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
unsigned int tidRing(const DetId &id) const
Geom::Phi< T > phi() const
unsigned int side(const DetId &id) const
virtual int nrows() const =0
const Bounds & bounds() const
unsigned int tidWheel(const DetId &id) const
unsigned int moduleTypeID_
const Plane & surface() const
The nominal surface of the GeomDet.
const PixelGeomDetUnit * specDet_
DetId partnerDetId(const DetId &id) const
std::vector< bool > tiltedVsType
unsigned int calcModuleType(float pitch, float space, bool barrel, bool tiltedBarrel, bool psModule) const
const Surface::PositionType & position() const
The position (origin of the R.F.)
unsigned int tobSide(const DetId &id) const
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
bool outerModuleAtSmallerR_
Abs< T >::type abs(const T &t)
const DetId & detId() const
static constexpr auto TOB
ModuleType getDetectorType(DetId) const
std::vector< bool > psVsType
static constexpr auto TIB
uint32_t stack(const DetId &id) const
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
std::vector< double > pitchVsType
unsigned int layer(const DetId &id) const
std::vector< double > spaceVsType
ModuleTypeCfg moduleTypeCfg_
virtual std::pair< float, float > pitch() const =0
const PixelTopology * specTopol_
Log< level::Warning, false > LogWarning
std::vector< bool > barrelVsType
virtual float width() const =0
unsigned int layerIdReduced_