ATLAS Offline Software
FastCaloSimCaloTransportation.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef FastCaloSimCaloTransportation_H
6 #define FastCaloSimCaloTransportation_H
7 
9 // ISF includes
12 // ATLAS tracking tools includes
15 
16 class ITimedExtrapolator;
17 class TFCSTruthState;
18 class G4FieldTrack;
19 
20 class FastCaloSimCaloTransportation: public extends<AthAlgTool, IFastCaloSimCaloTransportation>
21 {
22 
23 public:
24 
25  FastCaloSimCaloTransportation(const std::string& t, const std::string& n, const IInterface* p);
27 
28  virtual StatusCode initialize() override final;
29  virtual StatusCode finalize() override final;
30 
31  virtual std::vector<G4FieldTrack> transport(const TFCSTruthState* truth, bool forceNeutral = false) const override final;
32 
33 protected:
34 
35  // Converts a vector of Trk::HitInfo elements to a vector of G4FieldTrack
36  std::vector<G4FieldTrack> convertToFieldTrack(const std::vector<Trk::HitInfo>& vec) const;
37  // Main extrapolation tool for transporting particles in magnetic field through calorimter system using ATLAS tracking tool
38  PublicToolHandle<Trk::ITimedExtrapolator> m_extrapolator{this, "Extrapolator", "TimedExtrapolator"};
39  // Calo entrance and particle hypothesis for transportation
41  StringProperty m_caloEntranceName{this, "CaloEntrance", ""};
43 };
44 
45 #endif // FastCaloSimCaloTransportation_H
FastCaloSimCaloTransportation::finalize
virtual StatusCode finalize() override final
Definition: FastCaloSimCaloTransportation.cxx:53
ITimedExtrapolator.h
FastCaloSimCaloTransportation::m_extrapolator
PublicToolHandle< Trk::ITimedExtrapolator > m_extrapolator
Definition: FastCaloSimCaloTransportation.h:38
FastCaloSimCaloTransportation::initialize
virtual StatusCode initialize() override final
Definition: FastCaloSimCaloTransportation.cxx:38
FastCaloSimCaloTransportation::transport
virtual std::vector< G4FieldTrack > transport(const TFCSTruthState *truth, bool forceNeutral=false) const override final
Definition: FastCaloSimCaloTransportation.cxx:59
FastCaloSimCaloTransportation::m_caloEntrance
CxxUtils::CachedPointer< const Trk::TrackingVolume > m_caloEntrance
Definition: FastCaloSimCaloTransportation.h:40
vec
std::vector< size_t > vec
Definition: CombinationsGeneratorTest.cxx:12
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
PdgToParticleHypothesis.h
protected
#define protected
Definition: DetDescrConditionsDict_dict_fixes.cxx:14
CachedPointer.h
Cached pointer with atomic update.
IFastCaloSimCaloTransportation.h
FastCaloSimCaloTransportation::m_caloEntranceName
StringProperty m_caloEntranceName
Definition: FastCaloSimCaloTransportation.h:41
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
FastCaloSimCaloTransportation::convertToFieldTrack
std::vector< G4FieldTrack > convertToFieldTrack(const std::vector< Trk::HitInfo > &vec) const
Definition: FastCaloSimCaloTransportation.cxx:210
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::PdgToParticleHypothesis
Definition: PdgToParticleHypothesis.h:29
TFCSExtrapolationState.h
CxxUtils::CachedPointer< const Trk::TrackingVolume >
FastCaloSimCaloTransportation
Definition: FastCaloSimCaloTransportation.h:21
FastCaloSimCaloTransportation::FastCaloSimCaloTransportation
FastCaloSimCaloTransportation(const std::string &t, const std::string &n, const IInterface *p)
Definition: FastCaloSimCaloTransportation.cxx:32
TFCSTruthState
Definition: TFCSTruthState.h:13
FastCaloSimCaloTransportation::m_pdgToParticleHypothesis
Trk::PdgToParticleHypothesis m_pdgToParticleHypothesis
Definition: FastCaloSimCaloTransportation.h:42
FastCaloSimCaloTransportation::~FastCaloSimCaloTransportation
~FastCaloSimCaloTransportation()=default