Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
FPGATrackSimRawToLogicalHitsTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef FPGATrackSimRAWTOLOGICALHITSTOOL_H
6 #define FPGATrackSimRAWTOLOGICALHITSTOOL_H
7 
9 #include "GaudiKernel/ServiceHandle.h"
10 
15 #include <vector>
16 
17 
18 // Forward declaration
22 
23 
25 {
26  public:
27 
28  FPGATrackSimRawToLogicalHitsTool(const std::string&, const std::string&, const IInterface*);
29  virtual ~FPGATrackSimRawToLogicalHitsTool() = default;
30  virtual StatusCode initialize() override;
31 
34  StatusCode getUnmapped(std::vector<FPGATrackSimHit>& missing_hits);
35  const FPGATrackSimPlaneMap* getPlaneMap_1st(int sliceNum);
36 
37 
38 private:
39 
40  // JO configuration
41  ServiceHandle<IFPGATrackSimMappingSvc> m_FPGATrackSimMapping {this, "FPGATrackSimMappingSvc", "FPGATrackSimMappingSvc"};
42  ServiceHandle<IFPGATrackSimEventSelectionSvc> m_EvtSel {this, "FPGATrackSimEventSelectionSvc", "FPGATrackSimEventSelectionSvc"};
43  IntegerProperty m_saveOptional {this, "SaveOptional", 2, "flag to enable the truth/offline tracking save =0 no optional saved, =1 saved in region, =2 save all "};
44  IntegerArrayProperty m_towersToMap {this, "TowersToMap", {}, "Which Towers to map, goes from 0 to 96!"};
45 
46  // internal members
47  std::vector<int> m_towers;
48  std::vector<FPGATrackSimHit> m_missing_hits;// vector to save hits not mapped, debugging only
49  std::vector<int> m_missing_hit_codes; // for histograms used in debugging
50  const FPGATrackSimPlaneMap* m_pmap = nullptr;
51 
52 };
53 
54 #endif // FPGATrackSimRAWTOLOGICALHITSTOOL_H
FPGATrackSimRawToLogicalHitsTool::convert
StatusCode convert(unsigned stage, const FPGATrackSimEventInputHeader &header, FPGATrackSimLogicalEventInputHeader &logicheader)
Definition: FPGATrackSimRawToLogicalHitsTool.cxx:50
FPGATrackSimRawToLogicalHitsTool::m_missing_hit_codes
std::vector< int > m_missing_hit_codes
Definition: FPGATrackSimRawToLogicalHitsTool.h:49
FPGATrackSimLogicalEventInputHeader
Definition: FPGATrackSimLogicalEventInputHeader.h:21
header
Definition: hcg.cxx:526
FPGATrackSimRawToLogicalHitsTool::getPlaneMap_1st
const FPGATrackSimPlaneMap * getPlaneMap_1st(int sliceNum)
Definition: FPGATrackSimRawToLogicalHitsTool.cxx:105
python.FPGATrackSimAnalysisConfig.stage
stage
Definition: FPGATrackSimAnalysisConfig.py:681
FPGATrackSimRawToLogicalHitsTool::m_pmap
const FPGATrackSimPlaneMap * m_pmap
Definition: FPGATrackSimRawToLogicalHitsTool.h:50
FPGATrackSimPlaneMap.h
Maps physical layers to logical layers.
IFPGATrackSimMappingSvc.h
IFPGATrackSimMappingSvc
Definition: IFPGATrackSimMappingSvc.h:17
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
FPGATrackSimRawToLogicalHitsTool::~FPGATrackSimRawToLogicalHitsTool
virtual ~FPGATrackSimRawToLogicalHitsTool()=default
FPGATrackSimRawToLogicalHitsTool::m_towers
std::vector< int > m_towers
Definition: FPGATrackSimRawToLogicalHitsTool.h:47
AthAlgTool.h
FPGATrackSimEventInputHeader
Definition: FPGATrackSimEventInputHeader.h:22
FPGATrackSimRawToLogicalHitsTool::m_missing_hits
std::vector< FPGATrackSimHit > m_missing_hits
Definition: FPGATrackSimRawToLogicalHitsTool.h:48
FPGATrackSimPlaneMap
Definition: FPGATrackSimPlaneMap.h:62
FPGATrackSimRawToLogicalHitsTool::m_FPGATrackSimMapping
ServiceHandle< IFPGATrackSimMappingSvc > m_FPGATrackSimMapping
Definition: FPGATrackSimRawToLogicalHitsTool.h:41
FPGATrackSimHit.h
: FPGATrackSim-specific class to represent an hit in the detector.
FPGATrackSimRawToLogicalHitsTool::initialize
virtual StatusCode initialize() override
Definition: FPGATrackSimRawToLogicalHitsTool.cxx:27
FPGATrackSimRawToLogicalHitsTool::m_EvtSel
ServiceHandle< IFPGATrackSimEventSelectionSvc > m_EvtSel
Definition: FPGATrackSimRawToLogicalHitsTool.h:42
FPGATrackSimRawToLogicalHitsTool
Definition: FPGATrackSimRawToLogicalHitsTool.h:25
IFPGATrackSimEventSelectionSvc.h
FPGATrackSimRawToLogicalHitsTool::m_towersToMap
IntegerArrayProperty m_towersToMap
Definition: FPGATrackSimRawToLogicalHitsTool.h:44
FPGATrackSimRawToLogicalHitsTool::FPGATrackSimRawToLogicalHitsTool
FPGATrackSimRawToLogicalHitsTool(const std::string &, const std::string &, const IInterface *)
Definition: FPGATrackSimRawToLogicalHitsTool.cxx:23
AthAlgTool
Definition: AthAlgTool.h:26
FPGATrackSimRawToLogicalHitsTool::getUnmapped
StatusCode getUnmapped(std::vector< FPGATrackSimHit > &missing_hits)
FPGATrackSimRawToLogicalHitsTool::m_saveOptional
IntegerProperty m_saveOptional
Definition: FPGATrackSimRawToLogicalHitsTool.h:43
ServiceHandle< IFPGATrackSimMappingSvc >