ATLAS Offline Software
FastCaloSimV2ParamSvc.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ISF_FASTCALOSIMV2PARAMSVC_H
6 #define ISF_FASTCALOSIMV2PARAMSVC_H 1
7 
10 #include "StoreGate/StoreGateSvc.h"
11 #include "GaudiKernel/ServiceHandle.h"
13 #ifdef USE_GPU
15 #endif
16 
17 //forward declarations
19 
20 namespace ISF {
21 
22  class FastCaloSimV2ParamSvc : public extends<AthService, IFastCaloSimParamSvc> {
23  public:
25  FastCaloSimV2ParamSvc(const std::string& name, ISvcLocator* pSvcLocator);
26 
28  virtual ~FastCaloSimV2ParamSvc() = default;
29 
31  virtual StatusCode initialize() override final;
32 
35 
36  private:
37 
38 #ifdef USE_GPU
39  // for FCS-GPU
40  //construct the geometry with GPU EDM
41  bool convert_cellmap(t_cellmap* cellmap, t_cellmap_Gpu* newcellmap);
42  void region_data_cpy( CaloGeometryLookup* glkup, GeoRegion* gr ) ;
43  GeoLoadGpu* m_gl;
44  GeoLoadGpu m_glg;
45  void* m_rd4h;
46  t_cellmap_Gpu m_cellmap_gpu;
47 #endif
48 
52 
55 
56  std::string m_paramsFilename{"TFCSparam.root"};
57  std::string m_paramsObject{"SelPDGID"};
58 
60 
61  std::unique_ptr<CaloGeometryFromCaloDDM> m_caloGeo{};
62 
64  bool m_CompressMemory{true};
65  bool m_runOnGPU{false};
66  };
67 
68 }
69 
71 // Inline methods:
73 inline
75 { return m_detStore; }
76 
77 #endif //> !ISF_FASTCALOSIMV2PARAMSVC_H
ISF::FastCaloSimV2ParamSvc::m_runOnGPU
bool m_runOnGPU
Definition: FastCaloSimV2ParamSvc.h:65
ISF::FastCaloSimV2ParamSvc::m_CompressMemory
bool m_CompressMemory
Definition: FastCaloSimV2ParamSvc.h:64
ISF::FastCaloSimV2ParamSvc::m_param
TFCSParametrizationBase * m_param
Definition: FastCaloSimV2ParamSvc.h:59
IFastCaloSimParamSvc.h
ISF::FastCaloSimV2ParamSvc::m_paramsObject
std::string m_paramsObject
Definition: FastCaloSimV2ParamSvc.h:57
ISF::FastCaloSimV2ParamSvc::m_printParametrization
bool m_printParametrization
Definition: FastCaloSimV2ParamSvc.h:63
t_cellmap_Gpu
std::map< Identifier_Gpu, const CaloDetDescrElement_Gpu * > t_cellmap_Gpu
Definition: GeoLoadGpu.h:15
gr
#define gr
TFCSExtrapolationState
Definition: TFCSExtrapolationState.h:13
RunActsMaterialValidation.extrapol
extrapol
Definition: RunActsMaterialValidation.py:90
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
ISF::FastCaloSimV2ParamSvc::detStore
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
Definition: FastCaloSimV2ParamSvc.h:74
TFCSParametrizationBase
Definition: TFCSParametrizationBase.h:46
CaloGeometryFromCaloDDM.h
GeoLoadGpu.h
ISF::FastCaloSimV2ParamSvc::simulate
virtual StatusCode simulate(TFCSSimulationState &simulstate, const TFCSTruthState *truth, const TFCSExtrapolationState *extrapol) const override final
Simulation Call.
Definition: FastCaloSimV2ParamSvc.cxx:169
ISF::FastCaloSimV2ParamSvc::initialize
virtual StatusCode initialize() override final
Athena algorithm's interface methods.
Definition: FastCaloSimV2ParamSvc.cxx:61
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ISF::FastCaloSimV2ParamSvc
Definition: FastCaloSimV2ParamSvc.h:22
ISF::FastCaloSimV2ParamSvc::m_detStore
ServiceHandle< StoreGateSvc > m_detStore
Pointer to StoreGate (detector store by default)
Definition: FastCaloSimV2ParamSvc.h:54
ISF::FastCaloSimV2ParamSvc::m_caloGeo
std::unique_ptr< CaloGeometryFromCaloDDM > m_caloGeo
Definition: FastCaloSimV2ParamSvc.h:61
CaloGeometryLookup
Definition: CaloGeometryLookup.h:25
ISF::FastCaloSimV2ParamSvc::FastCaloSimV2ParamSvc
FastCaloSimV2ParamSvc(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters.
Definition: FastCaloSimV2ParamSvc.cxx:44
ISF::FastCaloSimV2ParamSvc::~FastCaloSimV2ParamSvc
virtual ~FastCaloSimV2ParamSvc()=default
Destructor.
ISF::FastCaloSimV2ParamSvc::m_paramsFilename
std::string m_paramsFilename
Definition: FastCaloSimV2ParamSvc.h:56
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
GeoLoadGpu
Definition: GeoLoadGpu.h:17
GeoRegion
Definition: GeoRegion.h:18
ISF
ISFParticleOrderedQueue.
Definition: PrimaryParticleInformation.h:13
t_cellmap
std::map< Identifier, const CaloDetDescrElement * > t_cellmap
Definition: CaloGeometryLookup.h:20
AthService.h
TFCSTruthState
Definition: TFCSTruthState.h:13
StoreGateSvc.h
TFCSSimulationState
Definition: TFCSSimulationState.h:32
ServiceHandle< StoreGateSvc >