Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
#include <FPGATrackSimPlaneMap.h>
|
| FPGATrackSimPlaneMap (std::ifstream &fin, unsigned region, unsigned stage, std::vector< int > layerOverrides=std::vector< int >()) |
|
uint32_t | getNDetLayers () const |
|
uint32_t | getNLogiLayers () const |
|
uint32_t | getNCoords () const |
|
uint32_t | getNSections (size_t logiLayer) const |
|
uint32_t | getDim (size_t logiLayer) const |
|
SiliconTech | getDetType (size_t logiLayer) const |
|
uint32_t | getCoordOffset (size_t logiLayer) const |
|
uint32_t | getCoordLayer (uint32_t coord) const |
|
const LayerInfo & | getLayerInfo (uint32_t layer, uint32_t section) const |
|
bool | isSCT (int pl) const |
|
bool | isPixel (int pl) const |
|
bool | isEC (uint32_t layer, uint32_t section) const |
|
std::string | layerName (uint32_t layer, uint32_t section) const |
|
const LayerSection & | getLayerSection (SiliconTech siTech, DetectorZone zone, uint32_t physLayer) const |
|
const LayerSection & | getLayerSection (LayerInfo const &mi) const |
|
int | getLayer (SiliconTech siTech, DetectorZone zone, uint32_t physLayer) const |
|
unsigned | getSection (SiliconTech siTech, DetectorZone zone, uint32_t physLayer) const |
|
void | doRemap (FPGATrackSimHit &hit) const |
|
void | map (FPGATrackSimHit &hit) const |
|
Definition at line 61 of file FPGATrackSimPlaneMap.h.
◆ FPGATrackSimPlaneMap()
FPGATrackSimPlaneMap::FPGATrackSimPlaneMap |
( |
std::ifstream & |
fin, |
|
|
unsigned |
region, |
|
|
unsigned |
stage, |
|
|
std::vector< int > |
layerOverrides = std::vector<int>() |
|
) |
| |
◆ allocateMap()
void FPGATrackSimPlaneMap::allocateMap |
( |
std::ifstream & |
fin, |
|
|
uint32_t |
stage |
|
) |
| |
|
private |
Definition at line 53 of file FPGATrackSimPlaneMap.cxx.
57 std::string
line, silicon, detReg, layerKey, geoKey;
61 while (
line.empty() ||
line[0] ==
'!')
66 istringstream sline(
line);
67 ok = ok && (sline >> geoKey);
71 m_moduleRelabel = std::make_unique<FPGATrackSimModuleRelabel>(geoKey,
false);
80 istringstream sline(
line);
82 ok = ok && (layerKey ==
"logical_s1");
90 istringstream sline(
line);
92 ok = ok && (layerKey ==
"logical_s2");
100 for (
int i = 0;
i < nHeaderLines;
i++)
106 istringstream sline(
line);
107 ok = ok && (sline >> layerCounts[
i] >> silicon >> detReg);
109 ok = ok && ( (
i < (nHeaderLines/2) && silicon ==
"pixel") || (
i >= (nHeaderLines/2) && silicon ==
"SCT") );
110 ok = ok && ( (
i % (nHeaderLines/2) == 0 && detReg ==
"barrel") || (
i % (nHeaderLines/2) != 0 && (detReg ==
"endcap+" || detReg ==
"endcap-")) );
◆ doRemap()
◆ getCoordLayer()
uint32_t FPGATrackSimPlaneMap::getCoordLayer |
( |
uint32_t |
coord | ) |
const |
|
inline |
◆ getCoordOffset()
uint32_t FPGATrackSimPlaneMap::getCoordOffset |
( |
size_t |
logiLayer | ) |
const |
|
inline |
◆ getDetType()
SiliconTech FPGATrackSimPlaneMap::getDetType |
( |
size_t |
logiLayer | ) |
const |
|
inline |
◆ getDim()
uint32_t FPGATrackSimPlaneMap::getDim |
( |
size_t |
logiLayer | ) |
const |
|
inline |
◆ getLayer()
◆ getLayerInfo()
const LayerInfo& FPGATrackSimPlaneMap::getLayerInfo |
( |
uint32_t |
layer, |
|
|
uint32_t |
section |
|
) |
| const |
|
inline |
◆ getLayerSection() [1/2]
◆ getLayerSection() [2/2]
Definition at line 117 of file FPGATrackSimPlaneMap.h.
119 if (
static_cast<size_t>(siTech) <
m_map.size() ) {
120 if (
static_cast<size_t>(
zone) <
m_map.at(
static_cast<size_t>(siTech)).size() ) {
121 if ( physLayer <
m_map.at(
static_cast<size_t>(siTech)).at(
static_cast<size_t>(
zone)).size() ) {
122 return m_map[
static_cast<size_t>(siTech)][
static_cast<size_t>(
zone)][physLayer];
◆ getNCoords()
uint32_t FPGATrackSimPlaneMap::getNCoords |
( |
| ) |
const |
|
inline |
◆ getNDetLayers()
uint32_t FPGATrackSimPlaneMap::getNDetLayers |
( |
| ) |
const |
|
inline |
◆ getNLogiLayers()
uint32_t FPGATrackSimPlaneMap::getNLogiLayers |
( |
| ) |
const |
|
inline |
◆ getNSections()
uint32_t FPGATrackSimPlaneMap::getNSections |
( |
size_t |
logiLayer | ) |
const |
|
inline |
◆ getOverrideLayer()
◆ getSection()
◆ isEC()
bool FPGATrackSimPlaneMap::isEC |
( |
uint32_t |
layer, |
|
|
uint32_t |
section |
|
) |
| const |
|
inline |
◆ isPixel()
bool FPGATrackSimPlaneMap::isPixel |
( |
int |
pl | ) |
const |
|
inline |
◆ isSCT()
bool FPGATrackSimPlaneMap::isSCT |
( |
int |
pl | ) |
const |
|
inline |
◆ layerName()
std::string FPGATrackSimPlaneMap::layerName |
( |
uint32_t |
layer, |
|
|
uint32_t |
section |
|
) |
| const |
◆ map()
◆ readLayers()
void FPGATrackSimPlaneMap::readLayers |
( |
std::ifstream & |
fin, |
|
|
uint32_t |
stage |
|
) |
| |
|
private |
Definition at line 150 of file FPGATrackSimPlaneMap.cxx.
153 int BEC{}, physLayer{}, physDisk{}, logiLayer{}, logiLayer1{}, logiLayer2{}, stereo{}, nDim{};
154 string line, silicon, planeKey1, planeKey2, stereoKey;
162 if (
line.empty() ||
line[0] ==
'!')
continue;
164 istringstream sline(
line);
166 ok = ok && (sline >> silicon >>
BEC >> physDisk >> physLayer);
178 if (silicon ==
"pixel")
183 ok = ok && (sline >> planeKey1 >> logiLayer1 >> planeKey2 >> logiLayer2);
184 ok = ok && (planeKey1 ==
"plane1" && planeKey2 ==
"plane2");
186 else if (silicon ==
"SCT")
192 ok = ok && (sline >> stereoKey >> stereo >> planeKey1 >> logiLayer1 >> planeKey2 >> logiLayer2);
193 ok = ok && (planeKey1 ==
"plane1" && planeKey2 ==
"plane2" && stereoKey ==
"stereo");
202 else if (
stage == 1) logiLayer = logiLayer1;
203 else if (
stage == 2) logiLayer = logiLayer2;
210 m_map.at(sil).at(
BEC).at(physLayer).layer = logiLayer;
215 m_layerInfo[logiLayer].push_back({ siTech,
zone, physLayer, physDisk, stereo});
◆ seek()
void FPGATrackSimPlaneMap::seek |
( |
std::ifstream & |
fin, |
|
|
unsigned |
region |
|
) |
| |
|
private |
Definition at line 130 of file FPGATrackSimPlaneMap.cxx.
133 unsigned region_read = -1;
137 if (
line.empty() ||
line[0] ==
'!')
continue;
139 istringstream sline(
line);
141 bool ok =
static_cast<bool>(sline >>
key >> region_read);
142 if (ok &&
key ==
"region" && region_read == region)
break;
◆ m_coordLayer
std::vector<uint32_t> FPGATrackSimPlaneMap::m_coordLayer |
|
private |
◆ m_coordOffset
std::vector<uint32_t> FPGATrackSimPlaneMap::m_coordOffset |
|
private |
◆ m_dimension
std::vector<uint32_t> FPGATrackSimPlaneMap::m_dimension |
|
private |
◆ m_diskIndex
std::vector<uint32_t> FPGATrackSimPlaneMap::m_diskIndex |
|
private |
◆ m_inValidLayerSection
◆ m_layerInfo
std::vector<std::vector<LayerInfo> > FPGATrackSimPlaneMap::m_layerInfo |
|
private |
◆ m_layerOverrides
std::vector<int> FPGATrackSimPlaneMap::m_layerOverrides |
|
private |
◆ m_map
std::vector<std::vector<std::vector<LayerSection> > > FPGATrackSimPlaneMap::m_map |
|
private |
◆ m_moduleRelabel
◆ m_nCoords
uint32_t FPGATrackSimPlaneMap::m_nCoords = 0 |
|
private |
◆ m_nDetLayers
uint32_t FPGATrackSimPlaneMap::m_nDetLayers = 0 |
|
private |
◆ m_nLogiLayers
uint32_t FPGATrackSimPlaneMap::m_nLogiLayers = 0 |
|
private |
The documentation for this class was generated from the following files:
const LayerSection m_inValidLayerSection
void setSection(unsigned v)
std::vector< uint32_t > diskIndices(const std::string &geoKey)
for a given geo tag return disk indices remappings the format is this: 'GeometryVersion':'ATLAS-P2-RU...
unsigned getPhysLayer() const
SiliconTech getPairedDetType() const
bool isEC(uint32_t layer, uint32_t section) const
void readLayers(std::ifstream &fin, uint32_t stage)
std::vector< std::vector< std::vector< LayerSection > > > m_map
const LayerSection & getLayerSection(SiliconTech siTech, DetectorZone zone, uint32_t physLayer) const
bool isPixel(int pl) const
std::vector< int > m_layerOverrides
void seek(std::ifstream &fin, unsigned region)
std::vector< uint32_t > m_coordOffset
const LayerInfo & getLayerInfo(uint32_t layer, uint32_t section) const
unsigned getPairedPhysLayer() const
void setPairedSection(unsigned v)
DetectorZone getDetectorZone() const
void setPairedLayer(unsigned v)
std::string to_string(const DetectorType &type)
std::unique_ptr< FPGATrackSimModuleRelabel > m_moduleRelabel
void allocateMap(std::ifstream &fin, uint32_t stage)
DetectorZone getPairedDetZone() const
accumulate
Update flags based on parser line args.
void setLayer(unsigned v)
int getOverrideLayer(SiliconTech si, DetectorZone dz, int physLayer)
std::vector< uint32_t > m_dimension
SiliconTech getDetType() const
std::vector< std::vector< LayerInfo > > m_layerInfo
std::vector< uint32_t > m_diskIndex
std::vector< uint32_t > m_coordLayer
HitType getHitType() const
void setHitType(HitType type)