15#include "GaudiKernel/ISvcLocator.h"
16#include "GaudiKernel/ITHistSvc.h"
17#include "GaudiKernel/Bootstrap.h"
52 return StatusCode::SUCCESS;
61 return StatusCode::SUCCESS;
71 StatusCode
sc = StatusCode::SUCCESS;
83 return StatusCode::FAILURE;
92 for (;itTracks!=endTracks;++itTracks) {
95 const Trk::TrackStates *currentTSOSList =(*itTracks)->trackStateOnSurfaces();
106 for (;itTSOS!=endTSOS;++itTSOS) {
115 if (mEffect&&tParameter) {
134 }
else if ( (mef!=
nullptr) && (mef->
energyLoss() !=
nullptr) ) {
146 return StatusCode::FAILURE;
160 return StatusCode::SUCCESS;
169 m_Tree =
new TTree(
"MaterialOnTrackValidation",
"Material on track validation");
183 SmartIF<ITHistSvc> tHistSvc{service(
"THistSvc")};
185 ATH_MSG_ERROR(
"initialize() Could not find Hist Service -> Switching ValidationMode Off !");
190 if ((tHistSvc->regTree(
"/val/MaterialOnTrackValidation",
m_Tree)).isFailure()) {
191 ATH_MSG_ERROR(
"initialize() Could not register the Tree -> Switching ValidationMode Off !");
#define ATH_MSG_VERBOSE(x)
DataVector< Trk::Track > TrackCollection
This typedef represents a collection of Trk::Track objects.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
ServiceHandle< StoreGateSvc > & evtStore()
DataModel_detail::const_iterator< DataVector > const_iterator
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
double deltaE() const
returns the
class holding information about momentum reduction and an additional noise term due to significant en...
double retainedEnFraction() const
returns
base class to integrate material effects on Trk::Track in a flexible way.
double thicknessInX0() const
returns the actually traversed material .
represents the full description of deflection and e-loss of a track in material.
const EnergyLoss * energyLoss() const
returns the energy loss object.
float m_positionY[MAXUPDATES]
y position of the update
void bookTree()
booking the tree
double m_eta[MAXUPDATES]
eta
float m_positionZ[MAXUPDATES]
z position of the update
float m_positionR[MAXUPDATES]
r value of the material update
~MaterialOnTrackValidation()
Default Destructor.
std::string m_inputTrackCollection
properties from JobOptions:
float m_positionX[MAXUPDATES]
x position of the update
float m_traversedStepInX0[MAXUPDATES]
the step path in x0
MaterialOnTrackValidation(const std::string &name, ISvcLocator *pSvcLocator)
Standard Athena-Algorithm Constructor.
float m_momentumChange[MAXUPDATES]
change of the momentum
StatusCode initialize()
standard Athena-Algorithm method
StatusCode execute()
standard Athena-Algorithm method
double m_currentPathInX0
accumulation variable
float m_traversedPathInX0[MAXUPDATES]
accumulated traversed path in rlength
StatusCode finalize()
standard Athena-Algorithm method
double m_stepInX0
traversed thickness in radiation length
float m_momentum[MAXUPDATES]
momentum before the update is applied
const Amg::Vector3D & momentum() const
Access method for the momentum.
const Amg::Vector3D & position() const
Access method for the position.
DataVector< const Trk::TrackStateOnSurface > TrackStates
ParametersBase< TrackParametersDim, Charged > TrackParameters