ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
ISF
ISF_FastCaloSim
ISF_FastCaloSimSD
src
SDWrapper.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef ISF_FASTCALOSIMSD_SDWRAPPER_H
6
#define ISF_FASTCALOSIMSD_SDWRAPPER_H
7
8
// System includes
9
#include <memory>
10
#include <string>
11
#include <vector>
12
13
// External includes
14
#include "G4VSensitiveDetector.hh"
15
16
// Framework includes
17
#include "
StoreGate/WriteHandle.h
"
18
19
// Forward declarations
20
class
FCS_StepInfoSD
;
21
namespace
ISF_FCS_Parametrization
{
22
class
FCS_StepInfoCollection
;
23
}
24
namespace
FCS_Param
{
25
26
namespace
detail
{
27
46
template
<
class
SDType,
class
HitContainerType>
47
class
SDWrapper
:
public
G4VSensitiveDetector {
48
49
public
:
51
using
SDList_t
= std::vector<SDType*>;
52
54
SDWrapper
(
const
std::string& name,
const
std::string& hitCollectionName);
55
57
void
addSD
(SDType* sd);
58
60
virtual
void
Initialize
(G4HCofThisEvent*)
override
final
;
61
63
virtual
bool
ProcessHits
(G4Step*, G4TouchableHistory*)
override
final
;
64
66
void
EndOfAthenaEvent
();
67
68
private
:
70
std::string
m_hitCollName
;
71
73
SG::WriteHandle<HitContainerType>
m_hitColl
;
74
76
SDList_t
m_sdList
;
77
78
};
// class SDWrapper
79
80
}
// namespace detail
81
83
using
FCS_StepInfoSDWrapper
=
84
detail::SDWrapper
<
FCS_StepInfoSD
,
85
ISF_FCS_Parametrization::FCS_StepInfoCollection
>;
86
87
}
// namespace FCS_Param
88
89
#endif
WriteHandle.h
Handle class for recording to StoreGate.
FCS_Param::detail::SDWrapper
A template class which wraps multiple sensitive detectors.
Definition
SDWrapper.h:47
FCS_Param::detail::SDWrapper< FCS_StepInfoSD, ISF_FCS_Parametrization::FCS_StepInfoCollection >::SDList_t
std::vector< FCS_StepInfoSD * > SDList_t
Definition
SDWrapper.h:51
FCS_Param::detail::SDWrapper::ProcessHits
virtual bool ProcessHits(G4Step *, G4TouchableHistory *) override final
This method should not be called. It will throw.
Definition
SDWrapper.cxx:58
FCS_Param::detail::SDWrapper::Initialize
virtual void Initialize(G4HCofThisEvent *) override final
Beginning of G4 event; initialize the hit collection.
Definition
SDWrapper.cxx:44
FCS_Param::detail::SDWrapper::SDWrapper
SDWrapper(const std::string &name, const std::string &hitCollectionName)
Construct the wrapper from the output collection name.
Definition
SDWrapper.cxx:26
FCS_Param::detail::SDWrapper::EndOfAthenaEvent
void EndOfAthenaEvent()
Gather the hits into the WriteHandle from all the SDs.
Definition
SDWrapper.cxx:70
FCS_Param::detail::SDWrapper< FCS_StepInfoSD, ISF_FCS_Parametrization::FCS_StepInfoCollection >::m_hitCollName
std::string m_hitCollName
Definition
SDWrapper.h:70
FCS_Param::detail::SDWrapper< FCS_StepInfoSD, ISF_FCS_Parametrization::FCS_StepInfoCollection >::m_sdList
SDList_t m_sdList
Definition
SDWrapper.h:76
FCS_Param::detail::SDWrapper::addSD
void addSD(SDType *sd)
Add an SD to this wrapper.
Definition
SDWrapper.cxx:36
FCS_Param::detail::SDWrapper< FCS_StepInfoSD, ISF_FCS_Parametrization::FCS_StepInfoCollection >::m_hitColl
SG::WriteHandle< ISF_FCS_Parametrization::FCS_StepInfoCollection > m_hitColl
Definition
SDWrapper.h:73
FCS_StepInfoSD
Common sensitive detector class for LAr systems.
Definition
FCS_StepInfoSD.h:71
ISF_FCS_Parametrization::FCS_StepInfoCollection
Class for collection of StepInfo class (G4 hits) copied and modified version to ISF.
Definition
FCS_StepInfoCollection.h:30
SG::WriteHandle
Definition
StoreGate/StoreGate/WriteHandle.h:73
FCS_Param::detail
Definition
SDWrapper.cxx:20
FCS_Param
Definition
FCS_StepInfoSD.h:35
FCS_Param::FCS_StepInfoSDWrapper
detail::SDWrapper< FCS_StepInfoSD, ISF_FCS_Parametrization::FCS_StepInfoCollection > FCS_StepInfoSDWrapper
Template instantiation for LArG4SimpleSD.
Definition
SDWrapper.h:83
ISF_FCS_Parametrization
Definition
FCS_StepInfo.h:25
Generated on
for ATLAS Offline Software by
1.17.0