8#ifndef GeantFollowerHelper_H
9#define GeantFollowerHelper_H
12#include "GaudiKernel/ToolHandle.h"
15#include "G4ThreeVector.hh"
37 virtual StatusCode
finalize ()
override;
43 virtual void trackParticle(
const G4ThreeVector& pos,
const G4ThreeVector& mom,
int pdg,
double charge,
float t,
float X0)
override;
double charge(const T &p)
static constexpr int MAXPROBES
virtual void beginEvent() override
std::string m_validationTreeName
validation tree name - to be acessed by this from root
virtual StatusCode initialize() override
virtual ~GeantFollowerHelper()
bool m_extrapolateDirectly
GeantFollowerHelper(const std::string &, const std::string &, const IInterface *)
virtual void trackParticle(const G4ThreeVector &pos, const G4ThreeVector &mom, int pdg, double charge, float t, float X0) override
virtual void endEvent() override
virtual StatusCode finalize() override
std::unique_ptr< TreeData > m_treeData
TTree * m_validationTree
Root Validation Tree.
const TrackParameters * m_parameterCache
bool m_extrapolateIncrementally
std::string m_validationTreeFolder
stream/folder to for the TTree to be written out
ToolHandle< IExtrapolator > m_extrapolator
std::string m_validationTreeDescription
validation tree description - second argument in TTree
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersBase< TrackParametersDim, Charged > TrackParameters
Ntuple variables : initial parameters Split this out into a separate, dynamically-allocated block.
float m_trk_theta[MAXPROBES]
float m_g4_eta[MAXPROBES]
float m_trk_lx[MAXPROBES]
float m_trk_ly[MAXPROBES]
int m_trk_status[MAXPROBES]
Ntuple variables : trk follow up parameters.
float m_trk_phi[MAXPROBES]
float m_trk_eta[MAXPROBES]
float m_g4_phi[MAXPROBES]
int m_g4_steps
Ntuple variables : g4 step parameters.
float m_g4_theta[MAXPROBES]
float m_g4_tX0[MAXPROBES]