ATLAS Offline Software
Loading...
Searching...
No Matches
FPGATrackSimMappingSvc Class Reference

#include <FPGATrackSimMappingSvc.h>

Inheritance diagram for FPGATrackSimMappingSvc:
Collaboration diagram for FPGATrackSimMappingSvc:

Public Member Functions

 FPGATrackSimMappingSvc (const std::string &name, ISvcLocator *svc)
virtual ~FPGATrackSimMappingSvc ()=default
virtual StatusCode initialize () override
virtual const FPGATrackSimPlaneMapPlaneMap_1st (int slice) const override
virtual const FPGATrackSimPlaneMapPlaneMap_2nd (int slice) const override
virtual const FPGATrackSimRegionMapRegionMap_1st () const override
virtual const FPGATrackSimRegionMapRegionMap_2nd () const override
virtual const FPGATrackSimRegionMapSubRegionMap () const override
virtual const FPGATrackSimRegionMapSubRegionMap_2nd () const override
virtual std::string getFakeNNMapString () const override
virtual std::string getFakeNNMap2ndString () const override
virtual std::string getExtensionNNHitMapString () const override
virtual std::string getExtensionNNVolMapString () const override
virtual std::string getParamNNMapString () const override
virtual std::string getParamNNMap2ndString () const override
virtual std::string getGNNModuleMapString () const override

Private Member Functions

virtual size_t GetPlaneMap_1stSliceSize () const override
virtual size_t GetPlaneMap_2ndSliceSize () const override
int readPmapSize (std::ifstream &fileIn)
int countPmapSize (std::ifstream &fileIn)
StatusCode checkInputs ()
StatusCode checkAllocs ()

Private Attributes

Gaudi::Property< unsigned int > m_regionID { this, "regionID", 0, "current region under processing"}
Gaudi::Property< std::string > m_mappingType {this, "mappingType", "FILE", "for now should be FILE only, DB for the future"}
Gaudi::Property< std::string > m_rmap_path {this, "rmap", "", "path of the region-map file"}
Gaudi::Property< std::string > m_subrmap_path {this, "subrmap", "", "path of the region-map file for subregions"}
Gaudi::Property< std::string > m_pmap_path {this, "pmap", "", "path of the PMAP file"}
Gaudi::Property< std::string > m_modulelut_path {this, "modulemap", "", "path of the ModuleLUT file"}
Gaudi::Property< std::string > m_NNmap_path_fake {this, "FakeNNonnx1st", "", "path of the NN weighting file for 1st stage"}
Gaudi::Property< std::string > m_NNmap2nd_path_fake {this, "FakeNNonnx2nd", "", "path of the NN weighting file for 2nd stage"}
Gaudi::Property< std::string > m_NNmap_path_extension_vol {this, "ExtensionNNVolonnx", "", "path of the NN weighting file"}
Gaudi::Property< std::string > m_NNmap_path_extension_hit {this, "ExtensionNNHitonnx", "", "path of the NN weighting file"}
Gaudi::Property< std::string > m_NNmap_path_param {this, "ParamNNonnx1st", "", "path of the NN weighting file for 1st stage"}
Gaudi::Property< std::string > m_NNmap2nd_path_param {this, "ParamNNonnx2nd", "", "path of the NN weighting file for 2nd stage"}
Gaudi::Property< std::string > m_GNNmap_path_moduleMap {this, "GNNModuleMap", "", "path of the GNN Module Map file"}
Gaudi::Property< std::string > m_radii_path {this, "radiiFile", "", "path of the average radius file" }
Gaudi::Property< std::string > m_radii2nd_path {this, "radiiFile2nd", "", "path of the average radius file for 2nd stage" }
Gaudi::Property< std::vector< int > > m_layerOverrides {this, "layerOverride", {}, "Overrides the selection of the 1st stage logical layers in the plane map. Each entry declares a detector layer to use as a logical layer. Specify a detector layer with { SiliconTech * 1000 + DetectorZone * 100 + PhysicalLayer }"}
Gaudi::Property< bool > m_loadRadii {this, "loadRadii", true, "Whether or not to attempt to read in the idealized radii files" }
Gaudi::Property< bool > m_loadRegionMap {this, "loadRegionMap", true, "Whether or not to attempt to loda the region maps; if false, isInRegion will always return true" }
Gaudi::Property< bool > m_doGNNTrack {this, "DoGNNTrack", false, "flag to do NN tracking models for GNN tracking" }
std::vector< std::unique_ptr< FPGATrackSimPlaneMap > > m_pmap_vector_1st
std::vector< std::unique_ptr< FPGATrackSimPlaneMap > > m_pmap_vector_2nd
std::unique_ptr< FPGATrackSimRegionMapm_rmap_1st = nullptr
std::unique_ptr< FPGATrackSimRegionMapm_rmap_2nd = nullptr
std::unique_ptr< FPGATrackSimRegionMapm_subrmap = nullptr
std::unique_ptr< FPGATrackSimRegionMapm_subrmap_2nd = nullptr
std::unique_ptr< FPGATrackSimNNMapm_NNmap_fake = nullptr
std::unique_ptr< FPGATrackSimNNMapm_NNmap_param = nullptr
std::unique_ptr< FPGATrackSimNNMapm_NNmap2nd_fake = nullptr
std::unique_ptr< FPGATrackSimNNMapm_NNmap2nd_param = nullptr
std::unique_ptr< FPGATrackSimNNMapm_NNmap_extension_vol = nullptr
std::unique_ptr< FPGATrackSimNNMapm_NNmap_extension_hit = nullptr
std::unique_ptr< FPGATrackSimNNMapm_GNNmap_moduleMap = nullptr
size_t m_numberOfPmaps = 0

Detailed Description

Definition at line 20 of file FPGATrackSimMappingSvc.h.

Constructor & Destructor Documentation

◆ FPGATrackSimMappingSvc()

FPGATrackSimMappingSvc::FPGATrackSimMappingSvc ( const std::string & name,
ISvcLocator * svc )

Definition at line 7 of file FPGATrackSimMappingSvc.cxx.

7 :
8 base_class(name, svc)
9{
10}

◆ ~FPGATrackSimMappingSvc()

virtual FPGATrackSimMappingSvc::~FPGATrackSimMappingSvc ( )
virtualdefault

Member Function Documentation

◆ checkAllocs()

StatusCode FPGATrackSimMappingSvc::checkAllocs ( )
private

Definition at line 28 of file FPGATrackSimMappingSvc.cxx.

29{
30 if (m_pmap_vector_1st.empty())
31 {
32 ATH_MSG_FATAL("Error using 1st stage plane map no elements of vector made: " << m_pmap_vector_1st);
33 return StatusCode::FAILURE;
34 }
35 if (!m_numberOfPmaps){
36 ATH_MSG_FATAL("Error with declared number of plane maps: " << m_pmap_path);
37 return StatusCode::FAILURE;
38 }
39 if (m_numberOfPmaps != (m_pmap_vector_1st.size())){
40 ATH_MSG_FATAL("Error using number of declared plane maps does not equal number of loaded plane maps: " << m_pmap_path<<"=/="<<m_pmap_vector_1st.size());
41 return StatusCode::FAILURE;
42 }
43 for (size_t a = 0 ; a < m_pmap_vector_1st.size() ;a++)
44 {
45 if(!m_pmap_vector_1st.at(a)){
46 ATH_MSG_FATAL("Error using 1st stage plane map for slice: " << a <<" of "<< m_pmap_vector_1st.size());
47 return StatusCode::FAILURE;
48 }
49 }
50 if (m_pmap_vector_2nd.empty())
51 {
52 ATH_MSG_FATAL("Error using 2nd stage plane map no elements of vector made: " << m_pmap_vector_2nd);
53 return StatusCode::FAILURE;
54 }
55 if (!m_numberOfPmaps){
56 ATH_MSG_FATAL("Error with declared number of plane maps: " << m_pmap_path);
57 return StatusCode::FAILURE;
58 }
59 if (m_numberOfPmaps != (m_pmap_vector_2nd.size())){
60 ATH_MSG_FATAL("Error using number of declared plane maps does not equal number of loaded plane maps: " << m_pmap_path<<"=/="<<m_pmap_vector_2nd.size());
61 return StatusCode::FAILURE;
62 }
63 for (size_t a = 0 ; a < m_pmap_vector_2nd.size() ;a++)
64 {
65 if(!m_pmap_vector_2nd.at(a)){
66 ATH_MSG_FATAL("Error using 1st stage plane map for slice: " << a <<" of "<< m_pmap_vector_2nd.size());
67 return StatusCode::FAILURE;
68 }
69 }
70 if (!m_rmap_1st){
71 ATH_MSG_FATAL("Error creating region map for 1st stage from: " << m_rmap_path);
72 return StatusCode::FAILURE;
73 }
74 if (!m_rmap_2nd){
75 ATH_MSG_FATAL("Error creating region map for 2nd stage from: " << m_rmap_path);
76 return StatusCode::FAILURE;
77 }
78 if (!m_subrmap){
79 ATH_MSG_FATAL("Error creating sub-region map from: " << m_subrmap_path);
80 return StatusCode::FAILURE;
81 }
82 if (!m_subrmap_2nd){
83 ATH_MSG_FATAL("Error creating second stage sub-region map from: " << m_subrmap_path);
84 return StatusCode::FAILURE;
85 }
86 return StatusCode::SUCCESS;
87}
#define ATH_MSG_FATAL(x)
static Double_t a
std::vector< std::unique_ptr< FPGATrackSimPlaneMap > > m_pmap_vector_1st
Gaudi::Property< std::string > m_rmap_path
std::unique_ptr< FPGATrackSimRegionMap > m_subrmap
Gaudi::Property< std::string > m_subrmap_path
std::unique_ptr< FPGATrackSimRegionMap > m_rmap_2nd
std::unique_ptr< FPGATrackSimRegionMap > m_subrmap_2nd
Gaudi::Property< std::string > m_pmap_path
std::unique_ptr< FPGATrackSimRegionMap > m_rmap_1st
std::vector< std::unique_ptr< FPGATrackSimPlaneMap > > m_pmap_vector_2nd

◆ checkInputs()

StatusCode FPGATrackSimMappingSvc::checkInputs ( )
private

Definition at line 13 of file FPGATrackSimMappingSvc.cxx.

14{
15 if (m_pmap_path.value().empty())
16 ATH_MSG_FATAL("Main plane map definition missing");
17 else if (m_rmap_path.value().empty())
18 ATH_MSG_FATAL("Missing region map path");
19 else if (m_modulelut_path.value().empty())
20 ATH_MSG_FATAL("Module LUT file is missing");
21 else
22 return StatusCode::SUCCESS;
23
24 return StatusCode::FAILURE;
25}
Gaudi::Property< std::string > m_modulelut_path

◆ countPmapSize()

int FPGATrackSimMappingSvc::countPmapSize ( std::ifstream & fileIn)
private

Definition at line 156 of file FPGATrackSimMappingSvc.cxx.

157{
158 std::string line;
159
160 getline(fileIn, line);
161 std::istringstream sline(line);
162 std::string geoKeyCheck;
163 sline >> geoKeyCheck;
164 m_numberOfPmaps = 1;
165 while (getline(fileIn,line)){
166 std::istringstream sline(line);
167 std::string geoKeyCandidate;
168 sline >> geoKeyCandidate;
169 if(geoKeyCheck.compare(geoKeyCandidate)==0){
171 }
172 }
173 return m_numberOfPmaps;
174}

◆ getExtensionNNHitMapString()

std::string FPGATrackSimMappingSvc::getExtensionNNHitMapString ( ) const
overridevirtual

Definition at line 119 of file FPGATrackSimMappingSvc.cxx.

119 {
120 if (m_NNmap_extension_hit != nullptr) {
121 return m_NNmap_extension_hit->getNNMap();
122 }
123 else{
124 return "";
125 }
126}
std::unique_ptr< FPGATrackSimNNMap > m_NNmap_extension_hit

◆ getExtensionNNVolMapString()

std::string FPGATrackSimMappingSvc::getExtensionNNVolMapString ( ) const
overridevirtual

Definition at line 110 of file FPGATrackSimMappingSvc.cxx.

110 {
111 if (m_NNmap_extension_vol != nullptr) {
112 return m_NNmap_extension_vol->getNNMap();
113 }
114 else{
115 return "";
116 }
117}
std::unique_ptr< FPGATrackSimNNMap > m_NNmap_extension_vol

◆ getFakeNNMap2ndString()

std::string FPGATrackSimMappingSvc::getFakeNNMap2ndString ( ) const
overridevirtual

Definition at line 100 of file FPGATrackSimMappingSvc.cxx.

100 {
101 if (m_NNmap2nd_fake != nullptr) {
102 return m_NNmap2nd_fake->getNNMap();
103 }
104 else{
105 return "";
106 }
107}
std::unique_ptr< FPGATrackSimNNMap > m_NNmap2nd_fake

◆ getFakeNNMapString()

std::string FPGATrackSimMappingSvc::getFakeNNMapString ( ) const
overridevirtual

Definition at line 90 of file FPGATrackSimMappingSvc.cxx.

90 {
91 if (m_NNmap_fake != nullptr) {
92 return m_NNmap_fake->getNNMap();
93 }
94 else{
95 return "";
96 }
97}
std::unique_ptr< FPGATrackSimNNMap > m_NNmap_fake

◆ getGNNModuleMapString()

std::string FPGATrackSimMappingSvc::getGNNModuleMapString ( ) const
overridevirtual

Definition at line 147 of file FPGATrackSimMappingSvc.cxx.

147 {
148 if (m_GNNmap_moduleMap != nullptr) {
149 return m_GNNmap_moduleMap->getNNMap();
150 }
151 else{
152 return "";
153 }
154}
std::unique_ptr< FPGATrackSimNNMap > m_GNNmap_moduleMap

◆ getParamNNMap2ndString()

std::string FPGATrackSimMappingSvc::getParamNNMap2ndString ( ) const
overridevirtual

Definition at line 138 of file FPGATrackSimMappingSvc.cxx.

138 {
139 if (m_NNmap2nd_param != nullptr) {
140 return m_NNmap2nd_param->getNNMap();
141 }
142 else{
143 return "";
144 }
145}
std::unique_ptr< FPGATrackSimNNMap > m_NNmap2nd_param

◆ getParamNNMapString()

std::string FPGATrackSimMappingSvc::getParamNNMapString ( ) const
overridevirtual

Definition at line 129 of file FPGATrackSimMappingSvc.cxx.

129 {
130 if (m_NNmap_param != nullptr) {
131 return m_NNmap_param->getNNMap();
132 }
133 else{
134 return "";
135 }
136}
std::unique_ptr< FPGATrackSimNNMap > m_NNmap_param

◆ GetPlaneMap_1stSliceSize()

virtual size_t FPGATrackSimMappingSvc::GetPlaneMap_1stSliceSize ( ) const
inlineoverrideprivatevirtual

Definition at line 70 of file FPGATrackSimMappingSvc.h.

70{return m_pmap_vector_1st.size();}

◆ GetPlaneMap_2ndSliceSize()

virtual size_t FPGATrackSimMappingSvc::GetPlaneMap_2ndSliceSize ( ) const
inlineoverrideprivatevirtual

Definition at line 71 of file FPGATrackSimMappingSvc.h.

71{return m_pmap_vector_2nd.size();}

◆ initialize()

StatusCode FPGATrackSimMappingSvc::initialize ( )
overridevirtual

Definition at line 175 of file FPGATrackSimMappingSvc.cxx.

176{
178
179 if (m_mappingType.value() == "FILE")
180 {
181 const std::string & filepath = PathResolverFindCalibFile(m_pmap_path.value());
182 std::ifstream fin(filepath);
183 if (!fin.is_open())
184 {
185 ATH_MSG_DEBUG("Couldn't open " << filepath);
186 throw ("FPGATrackSimPlaneMap Couldn't open " + filepath);
187 }
188
189 countPmapSize(fin);
190 fin.close();
191 fin.open(filepath);
192 ATH_MSG_DEBUG("Creating the 1st stage plane map");
193 for (size_t i = 0; i<m_numberOfPmaps; i++)
194 {
195 m_pmap_vector_1st.emplace_back(std::make_unique<FPGATrackSimPlaneMap>(fin, m_regionID, 1, m_layerOverrides));
196 }
197
198 fin.close();
199 fin.open(filepath);
200 ATH_MSG_DEBUG("Creating the 2nd stage plane map");
201 for (size_t i = 0; i<m_numberOfPmaps; i++)
202 {
203 m_pmap_vector_2nd.emplace_back(std::make_unique<FPGATrackSimPlaneMap>(fin, m_regionID, 2, m_layerOverrides));
204 }
205 fin.close();
206
207 ATH_MSG_DEBUG("Creating the 1st stage region map: " << PathResolverFindCalibFile(m_rmap_path.value()));
208 m_rmap_1st = std::unique_ptr<FPGATrackSimRegionMap>(new FPGATrackSimRegionMap(m_pmap_vector_1st, PathResolverFindCalibFile(m_rmap_path.value()), !(m_loadRegionMap.value())));
209
210 ATH_MSG_DEBUG("Creating the 2nd stage region map: " << PathResolverFindCalibFile(m_rmap_path.value()));
211 m_rmap_2nd = std::unique_ptr<FPGATrackSimRegionMap>(new FPGATrackSimRegionMap(m_pmap_vector_2nd, PathResolverFindCalibFile(m_rmap_path.value()), !(m_loadRegionMap.value())));
212
213 ATH_MSG_DEBUG("Creating the sub-region map: " << PathResolverFindCalibFile(m_subrmap_path.value()));
214 m_subrmap = std::unique_ptr<FPGATrackSimRegionMap>(new FPGATrackSimRegionMap(m_pmap_vector_1st, PathResolverFindCalibFile(m_subrmap_path.value()), !(m_loadRegionMap.value())));
215
216 ATH_MSG_DEBUG("Creating the 2nd stage sub-region map:" << PathResolverFindCalibFile(m_subrmap_path.value()));
217 m_subrmap_2nd = std::unique_ptr<FPGATrackSimRegionMap>(new FPGATrackSimRegionMap(m_pmap_vector_2nd, PathResolverFindCalibFile(m_subrmap_path.value()), !(m_loadRegionMap.value())));
218
219 ATH_MSG_DEBUG("Setting the Modules LUT for Region Maps");
220 ATH_MSG_DEBUG("Loading the Module LUT from " << PathResolverFindCalibFile(m_modulelut_path.value()));
221 m_rmap_1st->loadModuleIDLUT(PathResolverFindCalibFile(m_modulelut_path.value()));
222 m_rmap_2nd->loadModuleIDLUT(PathResolverFindCalibFile(m_modulelut_path.value()));
223
224 if (m_loadRadii) {
225 ATH_MSG_DEBUG("Setting the average radius per logical layer for Region and Subregion Maps");
226 ATH_MSG_DEBUG("Loading Radii from " << PathResolverFindCalibFile(m_radii_path.value()));
227 m_rmap_1st->loadRadiiFile(PathResolverFindCalibFile(m_radii_path.value()), 0, m_pmap_vector_1st.at(0)->getNLogiLayers());
228 m_rmap_2nd->loadRadiiFile(PathResolverFindCalibFile(m_radii_path.value()), 0, m_pmap_vector_1st.at(0)->getNLogiLayers());
229 m_rmap_2nd->loadRadiiFile(PathResolverFindCalibFile(m_radii2nd_path.value()), m_pmap_vector_1st.at(0)->getNLogiLayers(), m_pmap_vector_2nd.at(0)->getNLogiLayers());
230
231 m_subrmap->loadRadiiFile(PathResolverFindCalibFile(m_radii_path.value()), 0, m_pmap_vector_1st.at(0)->getNLogiLayers());
232 m_subrmap_2nd->loadRadiiFile(PathResolverFindCalibFile(m_radii_path.value()), 0, m_pmap_vector_1st.at(0)->getNLogiLayers());
233 m_subrmap_2nd->loadRadiiFile(PathResolverFindCalibFile(m_radii2nd_path.value()), m_pmap_vector_1st.at(0)->getNLogiLayers(), m_pmap_vector_2nd.at(0)->getNLogiLayers());
234 }
235
236 ATH_MSG_DEBUG("Creating NN weighting map");
237 ATH_MSG_INFO("MappingSVc using " << m_NNmap_path_fake.value() << " for fake track estimation");
238 ATH_MSG_INFO("MappingSVc using " << m_NNmap_path_param.value() << " for track parameter estimation");
239 ATH_MSG_INFO("MappingSVc using " << m_NNmap2nd_path_fake.value() << " for 2nd stage fake track estimation");
240 ATH_MSG_INFO("MappingSVc using " << m_NNmap2nd_path_param.value() << " for 2nd stage track parameter estimation");
241 ATH_MSG_INFO("MappingSVc using " << m_NNmap_path_extension_vol.value() << " for track extension");
242 ATH_MSG_INFO("MappingSVc using " << m_NNmap_path_extension_hit.value() << " for track extension");
243
244 if ( ! m_NNmap_path_extension_vol.empty() ) {
245 std::string model_path = m_NNmap_path_extension_vol.value() + "_" + std::to_string(m_regionID) + "_cyl_condor.onnx";
246 m_NNmap_extension_vol = std::make_unique<FPGATrackSimNNMap>(PathResolverFindCalibFile(model_path));
247 } else {
248 m_NNmap_extension_vol = nullptr;
249 }
250
251 if ( ! m_NNmap_path_extension_hit.empty() ) {
252 std::string model_path = m_NNmap_path_extension_hit.value() + "_" + std::to_string(m_regionID) + "_cyl_condor.onnx";
253 m_NNmap_extension_hit = std::make_unique<FPGATrackSimNNMap>(PathResolverFindCalibFile(model_path));
254 } else {
255 m_NNmap_extension_hit = nullptr;
256
257 }
258
259 if ( ! m_NNmap_path_fake.empty() ) {
260 std::string model_path = m_NNmap_path_fake.value() + "_" + std::to_string(m_regionID) + "_condor.onnx";
261 m_NNmap_fake = std::make_unique<FPGATrackSimNNMap>(PathResolverFindCalibFile(model_path));
262 } else {
263 m_NNmap_fake = nullptr;
264 }
265
266 if ( ! m_NNmap2nd_path_fake.empty() ) {
267 std::string model_path = m_NNmap2nd_path_fake.value() + "_" + std::to_string(m_regionID) + "_condor.onnx";
268 m_NNmap2nd_fake = std::make_unique<FPGATrackSimNNMap>(PathResolverFindCalibFile(model_path));
269 } else {
270 m_NNmap2nd_fake = nullptr;
271 }
272
273 if (m_doGNNTrack) { // For GNN algorithms to use second stage models in first stage
274 if ( ! m_NNmap_path_param.empty() ) {
275 std::string model_path = m_NNmap_path_param.value() + "_" + std::to_string(m_regionID) + "_condor.onnx";
276 m_NNmap_param = std::make_unique<FPGATrackSimNNMap>(PathResolverFindCalibFile(model_path));
277 } else {
278 m_NNmap_param = nullptr;
279 }
280 }
281 else { // For GenScan/InsideOut algorithms to use first stage models
282 if ( ! m_NNmap_path_param.empty() ) {
283 std::string model_path;
284 if(m_regionID <= 354) model_path = m_NNmap_path_param.value() + "_34_354.onnx";
285 else if (m_regionID <= 738) model_path = m_NNmap_path_param.value() + "_418_738.onnx";
286 else model_path = m_NNmap_path_param.value() + "_802_1250.onnx";
287 m_NNmap_param = std::make_unique<FPGATrackSimNNMap>(PathResolverFindCalibFile(model_path));
288 } else {
289 m_NNmap_param = nullptr;
290 }
291 }
292
293 if ( ! m_NNmap2nd_path_param.empty() ) {
294 std::string model_path = m_NNmap2nd_path_param.value() + "_" + std::to_string(m_regionID) + "_condor.onnx";
295 m_NNmap_param = std::make_unique<FPGATrackSimNNMap>(PathResolverFindCalibFile(model_path));
296 } else {
297 m_NNmap_param = nullptr;
298 }
299
300 if ( ! m_GNNmap_path_moduleMap.empty() ) {
301 std::string model_path = m_GNNmap_path_moduleMap.value()+ "_" + std::to_string(m_regionID) + ".root";
302 m_GNNmap_moduleMap = std::make_unique<FPGATrackSimNNMap>(PathResolverFindCalibFile(model_path));
303 } else {
304 m_GNNmap_moduleMap = nullptr;
305 }
306 }
308 return StatusCode::SUCCESS;
309}
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_INFO(x)
#define ATH_MSG_DEBUG(x)
std::string PathResolverFindCalibFile(const std::string &logical_file_name)
Gaudi::Property< bool > m_loadRegionMap
Gaudi::Property< std::string > m_NNmap_path_fake
Gaudi::Property< bool > m_loadRadii
Gaudi::Property< std::string > m_NNmap2nd_path_param
Gaudi::Property< std::string > m_radii_path
Gaudi::Property< std::string > m_NNmap2nd_path_fake
Gaudi::Property< std::string > m_mappingType
Gaudi::Property< std::string > m_GNNmap_path_moduleMap
Gaudi::Property< std::string > m_NNmap_path_extension_vol
Gaudi::Property< std::string > m_NNmap_path_param
int countPmapSize(std::ifstream &fileIn)
Gaudi::Property< std::string > m_NNmap_path_extension_hit
Gaudi::Property< std::vector< int > > m_layerOverrides
Gaudi::Property< bool > m_doGNNTrack
Gaudi::Property< unsigned int > m_regionID
Gaudi::Property< std::string > m_radii2nd_path

◆ PlaneMap_1st()

virtual const FPGATrackSimPlaneMap * FPGATrackSimMappingSvc::PlaneMap_1st ( int slice) const
inlineoverridevirtual

Definition at line 29 of file FPGATrackSimMappingSvc.h.

29{ return m_pmap_vector_1st.at(slice).get(); }

◆ PlaneMap_2nd()

virtual const FPGATrackSimPlaneMap * FPGATrackSimMappingSvc::PlaneMap_2nd ( int slice) const
inlineoverridevirtual

Definition at line 30 of file FPGATrackSimMappingSvc.h.

30{ return m_pmap_vector_2nd.at(slice).get(); }

◆ readPmapSize()

int FPGATrackSimMappingSvc::readPmapSize ( std::ifstream & fileIn)
private

◆ RegionMap_1st()

virtual const FPGATrackSimRegionMap * FPGATrackSimMappingSvc::RegionMap_1st ( ) const
inlineoverridevirtual

Definition at line 31 of file FPGATrackSimMappingSvc.h.

31{ return m_rmap_1st.get(); }

◆ RegionMap_2nd()

virtual const FPGATrackSimRegionMap * FPGATrackSimMappingSvc::RegionMap_2nd ( ) const
inlineoverridevirtual

Definition at line 32 of file FPGATrackSimMappingSvc.h.

32{ return m_rmap_2nd.get(); }

◆ SubRegionMap()

virtual const FPGATrackSimRegionMap * FPGATrackSimMappingSvc::SubRegionMap ( ) const
inlineoverridevirtual

Definition at line 33 of file FPGATrackSimMappingSvc.h.

33{ return m_subrmap.get(); }

◆ SubRegionMap_2nd()

virtual const FPGATrackSimRegionMap * FPGATrackSimMappingSvc::SubRegionMap_2nd ( ) const
inlineoverridevirtual

Definition at line 34 of file FPGATrackSimMappingSvc.h.

34{ return m_subrmap_2nd.get(); }

Member Data Documentation

◆ m_doGNNTrack

Gaudi::Property<bool> FPGATrackSimMappingSvc::m_doGNNTrack {this, "DoGNNTrack", false, "flag to do NN tracking models for GNN tracking" }
private

Definition at line 64 of file FPGATrackSimMappingSvc.h.

64{this, "DoGNNTrack", false, "flag to do NN tracking models for GNN tracking" };

◆ m_GNNmap_moduleMap

std::unique_ptr<FPGATrackSimNNMap> FPGATrackSimMappingSvc::m_GNNmap_moduleMap = nullptr
private

Definition at line 82 of file FPGATrackSimMappingSvc.h.

◆ m_GNNmap_path_moduleMap

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_GNNmap_path_moduleMap {this, "GNNModuleMap", "", "path of the GNN Module Map file"}
private

Definition at line 58 of file FPGATrackSimMappingSvc.h.

58{this, "GNNModuleMap", "", "path of the GNN Module Map file"};

◆ m_layerOverrides

Gaudi::Property<std::vector <int> > FPGATrackSimMappingSvc::m_layerOverrides {this, "layerOverride", {}, "Overrides the selection of the 1st stage logical layers in the plane map. Each entry declares a detector layer to use as a logical layer. Specify a detector layer with { SiliconTech * 1000 + DetectorZone * 100 + PhysicalLayer }"}
private

Definition at line 61 of file FPGATrackSimMappingSvc.h.

61{this, "layerOverride", {}, "Overrides the selection of the 1st stage logical layers in the plane map. Each entry declares a detector layer to use as a logical layer. Specify a detector layer with { SiliconTech * 1000 + DetectorZone * 100 + PhysicalLayer }"};

◆ m_loadRadii

Gaudi::Property<bool> FPGATrackSimMappingSvc::m_loadRadii {this, "loadRadii", true, "Whether or not to attempt to read in the idealized radii files" }
private

Definition at line 62 of file FPGATrackSimMappingSvc.h.

62{this, "loadRadii", true, "Whether or not to attempt to read in the idealized radii files" };

◆ m_loadRegionMap

Gaudi::Property<bool> FPGATrackSimMappingSvc::m_loadRegionMap {this, "loadRegionMap", true, "Whether or not to attempt to loda the region maps; if false, isInRegion will always return true" }
private

Definition at line 63 of file FPGATrackSimMappingSvc.h.

63{this, "loadRegionMap", true, "Whether or not to attempt to loda the region maps; if false, isInRegion will always return true" };

◆ m_mappingType

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_mappingType {this, "mappingType", "FILE", "for now should be FILE only, DB for the future"}
private

Definition at line 47 of file FPGATrackSimMappingSvc.h.

47{this, "mappingType", "FILE", "for now should be FILE only, DB for the future"};

◆ m_modulelut_path

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_modulelut_path {this, "modulemap", "", "path of the ModuleLUT file"}
private

Definition at line 51 of file FPGATrackSimMappingSvc.h.

51{this, "modulemap", "", "path of the ModuleLUT file"};

◆ m_NNmap2nd_fake

std::unique_ptr<FPGATrackSimNNMap> FPGATrackSimMappingSvc::m_NNmap2nd_fake = nullptr
private

Definition at line 78 of file FPGATrackSimMappingSvc.h.

◆ m_NNmap2nd_param

std::unique_ptr<FPGATrackSimNNMap> FPGATrackSimMappingSvc::m_NNmap2nd_param = nullptr
private

Definition at line 79 of file FPGATrackSimMappingSvc.h.

◆ m_NNmap2nd_path_fake

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_NNmap2nd_path_fake {this, "FakeNNonnx2nd", "", "path of the NN weighting file for 2nd stage"}
private

Definition at line 53 of file FPGATrackSimMappingSvc.h.

53{this, "FakeNNonnx2nd", "", "path of the NN weighting file for 2nd stage"};

◆ m_NNmap2nd_path_param

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_NNmap2nd_path_param {this, "ParamNNonnx2nd", "", "path of the NN weighting file for 2nd stage"}
private

Definition at line 57 of file FPGATrackSimMappingSvc.h.

57{this, "ParamNNonnx2nd", "", "path of the NN weighting file for 2nd stage"};

◆ m_NNmap_extension_hit

std::unique_ptr<FPGATrackSimNNMap> FPGATrackSimMappingSvc::m_NNmap_extension_hit = nullptr
private

Definition at line 81 of file FPGATrackSimMappingSvc.h.

◆ m_NNmap_extension_vol

std::unique_ptr<FPGATrackSimNNMap> FPGATrackSimMappingSvc::m_NNmap_extension_vol = nullptr
private

Definition at line 80 of file FPGATrackSimMappingSvc.h.

◆ m_NNmap_fake

std::unique_ptr<FPGATrackSimNNMap> FPGATrackSimMappingSvc::m_NNmap_fake = nullptr
private

Definition at line 76 of file FPGATrackSimMappingSvc.h.

◆ m_NNmap_param

std::unique_ptr<FPGATrackSimNNMap> FPGATrackSimMappingSvc::m_NNmap_param = nullptr
private

Definition at line 77 of file FPGATrackSimMappingSvc.h.

◆ m_NNmap_path_extension_hit

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_NNmap_path_extension_hit {this, "ExtensionNNHitonnx", "", "path of the NN weighting file"}
private

Definition at line 55 of file FPGATrackSimMappingSvc.h.

55{this, "ExtensionNNHitonnx", "", "path of the NN weighting file"};

◆ m_NNmap_path_extension_vol

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_NNmap_path_extension_vol {this, "ExtensionNNVolonnx", "", "path of the NN weighting file"}
private

Definition at line 54 of file FPGATrackSimMappingSvc.h.

54{this, "ExtensionNNVolonnx", "", "path of the NN weighting file"};

◆ m_NNmap_path_fake

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_NNmap_path_fake {this, "FakeNNonnx1st", "", "path of the NN weighting file for 1st stage"}
private

Definition at line 52 of file FPGATrackSimMappingSvc.h.

52{this, "FakeNNonnx1st", "", "path of the NN weighting file for 1st stage"};

◆ m_NNmap_path_param

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_NNmap_path_param {this, "ParamNNonnx1st", "", "path of the NN weighting file for 1st stage"}
private

Definition at line 56 of file FPGATrackSimMappingSvc.h.

56{this, "ParamNNonnx1st", "", "path of the NN weighting file for 1st stage"};

◆ m_numberOfPmaps

size_t FPGATrackSimMappingSvc::m_numberOfPmaps = 0
private

Definition at line 85 of file FPGATrackSimMappingSvc.h.

◆ m_pmap_path

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_pmap_path {this, "pmap", "", "path of the PMAP file"}
private

Definition at line 50 of file FPGATrackSimMappingSvc.h.

50{this, "pmap", "", "path of the PMAP file"};

◆ m_pmap_vector_1st

std::vector<std::unique_ptr<FPGATrackSimPlaneMap> > FPGATrackSimMappingSvc::m_pmap_vector_1st
private

Definition at line 68 of file FPGATrackSimMappingSvc.h.

◆ m_pmap_vector_2nd

std::vector<std::unique_ptr<FPGATrackSimPlaneMap> > FPGATrackSimMappingSvc::m_pmap_vector_2nd
private

Definition at line 69 of file FPGATrackSimMappingSvc.h.

◆ m_radii2nd_path

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_radii2nd_path {this, "radiiFile2nd", "", "path of the average radius file for 2nd stage" }
private

Definition at line 60 of file FPGATrackSimMappingSvc.h.

60{this, "radiiFile2nd", "", "path of the average radius file for 2nd stage" };

◆ m_radii_path

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_radii_path {this, "radiiFile", "", "path of the average radius file" }
private

Definition at line 59 of file FPGATrackSimMappingSvc.h.

59{this, "radiiFile", "", "path of the average radius file" };

◆ m_regionID

Gaudi::Property<unsigned int> FPGATrackSimMappingSvc::m_regionID { this, "regionID", 0, "current region under processing"}
private

Definition at line 46 of file FPGATrackSimMappingSvc.h.

46{ this, "regionID", 0, "current region under processing"}; // Current region of interest

◆ m_rmap_1st

std::unique_ptr<FPGATrackSimRegionMap> FPGATrackSimMappingSvc::m_rmap_1st = nullptr
private

Definition at line 72 of file FPGATrackSimMappingSvc.h.

◆ m_rmap_2nd

std::unique_ptr<FPGATrackSimRegionMap> FPGATrackSimMappingSvc::m_rmap_2nd = nullptr
private

Definition at line 73 of file FPGATrackSimMappingSvc.h.

◆ m_rmap_path

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_rmap_path {this, "rmap", "", "path of the region-map file"}
private

Definition at line 48 of file FPGATrackSimMappingSvc.h.

48{this, "rmap", "", "path of the region-map file"};

◆ m_subrmap

std::unique_ptr<FPGATrackSimRegionMap> FPGATrackSimMappingSvc::m_subrmap = nullptr
private

Definition at line 74 of file FPGATrackSimMappingSvc.h.

◆ m_subrmap_2nd

std::unique_ptr<FPGATrackSimRegionMap> FPGATrackSimMappingSvc::m_subrmap_2nd = nullptr
private

Definition at line 75 of file FPGATrackSimMappingSvc.h.

◆ m_subrmap_path

Gaudi::Property<std::string> FPGATrackSimMappingSvc::m_subrmap_path {this, "subrmap", "", "path of the region-map file for subregions"}
private

Definition at line 49 of file FPGATrackSimMappingSvc.h.

49{this, "subrmap", "", "path of the region-map file for subregions"};

The documentation for this class was generated from the following files: