#include <FastCaloSimCaloTransportation.h>
◆ FastCaloSimCaloTransportation()
      
        
          | FastCaloSimCaloTransportation::FastCaloSimCaloTransportation | ( | const std::string & | t, | 
        
          |  |  | const std::string & | n, | 
        
          |  |  | const IInterface * | p | 
        
          |  | ) |  |  | 
      
 
 
◆ ~FastCaloSimCaloTransportation()
  
  | 
        
          | FastCaloSimCaloTransportation::~FastCaloSimCaloTransportation | ( |  | ) |  |  | default | 
 
 
◆ convertToFieldTrack()
  
  | 
        
          | std::vector< G4FieldTrack > FastCaloSimCaloTransportation::convertToFieldTrack | ( | const std::vector< Trk::HitInfo > & | vec | ) | const |  | protected | 
 
 
◆ finalize()
  
  | 
        
          | StatusCode FastCaloSimCaloTransportation::finalize | ( |  | ) |  |  | finaloverridevirtual | 
 
 
◆ initialize()
  
  | 
        
          | StatusCode FastCaloSimCaloTransportation::initialize | ( |  | ) |  |  | finaloverridevirtual | 
 
 
◆ transport()
  
  | 
        
          | std::vector< G4FieldTrack > FastCaloSimCaloTransportation::transport | ( | const TFCSTruthState * | truth, |  
          |  |  | bool | forceNeutral = false |  
          |  | ) |  | const |  | finaloverridevirtual | 
 
Definition at line 59 of file FastCaloSimCaloTransportation.cxx.
   63   auto hitVector = std::make_unique<std::vector<Trk::HitInfo>>();
 
   67   if (forceNeutral) 
charge   = 0.;
 
   81   ATH_MSG_DEBUG( 
"[ fastCaloSim transport ] x from position eta="<<
pos.eta()<<
" phi="<<
pos.phi()<<
" d="<<
pos.mag()<<
" pT="<<
mom.perp() );
 
   86   double freepath = -1.;
 
   87   double tDec = freepath > 0. ? freepath : -1.;
 
   95   ATH_MSG_DEBUG( 
"[ fastCaloSim transport ] before calo entrance ");
 
  106   ATH_MSG_DEBUG( 
"[ fastCaloSim transport ] after calo entrance ");
 
  108   std::unique_ptr<const Trk::TrackParameters> caloEntry = 
nullptr;
 
  111       std::vector<Trk::HitInfo>* dummyHitVector = 
nullptr;
 
  133     caloEntry = inputPar.uniqueClone();
 
  135   ATH_MSG_DEBUG( 
"[ fastCaloSim transport ] after calo caloEntry ");
 
  138     std::unique_ptr<const Trk::TrackParameters> eParameters = 
nullptr;
 
  144         "[ fastCaloSim transport ] starting Calo transport from position eta=" 
  146         << 
" d=" << caloEntry->
position().mag());
 
  148       std::vector<Trk::HitInfo>* rawHitVector = 
hitVector.get();
 
  169       if(eParameters) 
hitVector->push_back(
Trk::HitInfo(std::move(eParameters), timeLim.time, nextGeoID, 0.));
 
  173   int IDCaloBoundary = 3000;
 
  177     while (it < hitVector->
end()){
 
  180         ATH_MSG_DEBUG(
" HIT: layer="<<
sample<<
" sample="<<
sample-IDCaloBoundary<<
" eta="<<hitPos.eta()<<
" phi="<<hitPos.phi()<<
" d="<<hitPos.mag());
 
  186   while(it2 < hitVector->
end()){
 
  189     ATH_MSG_DEBUG(
" HIT: layer="<<
sample<<
" sample="<<
sample-IDCaloBoundary<<
" eta="<<hitPos.eta()<<
" phi="<<hitPos.phi()<<
" r="<<hitPos.perp()<<
" z="<<hitPos[
Amg::z]);
 
  194   if (!forceNeutral && 
hitVector->empty()){
 
  195       ATH_MSG_DEBUG(
"forcing neutral charge in FastCaloSimCaloTransportation::caloHits");
 
  200   else if(
hitVector->empty()) 
ATH_MSG_ERROR(
"Empty hitVector even after forcing neutral charge. This may cause a segfault soon.");
 
 
 
 
◆ m_caloEntrance
◆ m_caloEntranceName
  
  | 
        
          | StringProperty FastCaloSimCaloTransportation::m_caloEntranceName {this, "CaloEntrance", ""} |  | protected | 
 
 
◆ m_extrapolator
  
  | 
        
          | PublicToolHandle<Trk::ITimedExtrapolator> FastCaloSimCaloTransportation::m_extrapolator {this, "Extrapolator", "TimedExtrapolator"} |  | protected | 
 
 
◆ m_pdgToParticleHypothesis
The documentation for this class was generated from the following files:
 
Trk::ParticleHypothesis convert(int pdg, bool &stable, bool &exiting, double charge=1.) const
Converter method : PDG -> Particle Hyptothesis.