21 if (trackerTopology.
pxfSide(detId) == 1) {
23 }
else if (trackerTopology.
pxfSide(detId) == 2) {
27 <<
"Tracker hit for seeding in FPix seems neither on positive nor on negative disk side: "
28 << trackerTopology.
print(detId).c_str();
41 if (trackerTopology.
tidSide(detId) == 1) {
43 }
else if (trackerTopology.
tidSide(detId) == 2) {
47 <<
"Tracker hit for seeding in TID seems neither on positive nor on negative disk side: "
48 << trackerTopology.
print(detId).c_str();
61 if (trackerTopology.
tecSide(detId) == 1) {
63 }
else if (trackerTopology.
tecSide(detId) == 2) {
67 <<
"Tracker hit for seeding in TEC seems neither on positive nor on negative disk side: "
68 << trackerTopology.
print(detId).c_str();
73 <<
"Cannot determine seeding layer from DetId:" << trackerTopology.
print(detId).c_str() << std::endl;
81 if (layerSpecification.substr(0, 4) ==
"BPix") {
84 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(4, 1).c_str());
85 }
else if (layerSpecification.substr(0, 4) ==
"FPix") {
87 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(4, 1).c_str());
88 if (layerSpecification.substr(layerSpecification.size() - 3) ==
"pos") {
90 }
else if (layerSpecification.substr(layerSpecification.size() - 3) ==
"neg") {
94 <<
"FPix seeding layer configuration '" << layerSpecification.c_str()
95 <<
"' does not specify the side correctly!";
98 }
else if (layerSpecification.substr(0, 3) ==
"TIB") {
101 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(3, 1).c_str());
102 }
else if (layerSpecification.substr(0, 4) ==
"MTIB") {
105 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(4, 1).c_str());
108 else if (layerSpecification.substr(0, 3) ==
"TID") {
110 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(3, 1).c_str());
111 if (layerSpecification.substr(layerSpecification.size() - 3) ==
"pos") {
113 }
else if (layerSpecification.substr(layerSpecification.size() - 3) ==
"neg") {
117 <<
"TID seeding layer configuration '" << layerSpecification.c_str()
118 <<
"' does not specify the side correctly!";
120 }
else if (layerSpecification.substr(0, 4) ==
"MTID") {
122 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(4, 1).c_str());
123 if (layerSpecification.substr(layerSpecification.size() - 3) ==
"pos") {
125 }
else if (layerSpecification.substr(layerSpecification.size() - 3) ==
"neg") {
129 <<
"MTID seeding layer configuration '" << layerSpecification.c_str()
130 <<
"' does not specify the side correctly!";
132 }
else if (layerSpecification.substr(0, 3) ==
"TOB") {
135 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(3, 1).c_str());
136 }
else if (layerSpecification.substr(0, 4) ==
"MTOB") {
139 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(4, 1).c_str());
140 }
else if (layerSpecification.substr(0, 3) ==
"TEC") {
142 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(3, 1).c_str());
143 if (layerSpecification.substr(layerSpecification.size() - 3) ==
"pos") {
145 }
else if (layerSpecification.substr(layerSpecification.size() - 3) ==
"neg") {
149 <<
"TEC seeding layer configuration '" << layerSpecification.c_str()
150 <<
"' does not specify the side correctly!";
153 }
else if (layerSpecification.substr(0, 4) ==
"MTEC") {
155 trackingLayer.
_layerNumber = std::atoi(layerSpecification.substr(4, 1).c_str());
156 if (layerSpecification.substr(layerSpecification.size() - 3) ==
"pos") {
158 }
else if (layerSpecification.substr(layerSpecification.size() - 3) ==
"neg") {
162 <<
"MTEC seeding layer configuration '" << layerSpecification.c_str()
163 <<
"' does not specify the side correctly!";
167 <<
"Bad data naming in seeding layer configuration."
168 <<
"no case sensitive name of ['BPix','FPix','TIB','MTIB','TID','MTID','TOB','TEC','MTEC'] matches '"
169 << layerSpecification.c_str() <<
"'";
173 return trackingLayer;
177 std::stringstream
ss;
217 std::stringstream
ss;
unsigned int getSubDetNumber() const
static constexpr auto TEC
unsigned int tibLayer(const DetId &id) const
unsigned int getLayerNumber() const
unsigned int pxfDisk(const DetId &id) const
static TrackingLayer createFromDetId(const DetId &detId, const TrackerTopology &trackerTopology)
std::string toIdString() const
unsigned int tidWheel(const DetId &id) const
std::string print(DetId detid) const
static const eqfct _eqfct
unsigned int tidSide(const DetId &id) const
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
unsigned int getSideNumber() const
static TrackingLayer createFromString(std::string layerSpecification)
unsigned int _layerNumber
static constexpr auto TOB
std::string toString() const
unsigned int pxbLayer(const DetId &id) const
static constexpr auto TIB
unsigned int pxfSide(const DetId &id) const
unsigned int tecWheel(const DetId &id) const
static constexpr auto TID
unsigned int tobLayer(const DetId &id) const
unsigned int tecSide(const DetId &id) const