5#ifndef ACTSGEOMETRY_ACTSPROPSTEPROOTWRITERSVC_H
6#define ACTSGEOMETRY_ACTSPROPSTEPROOTWRITERSVC_H
9#include "GaudiKernel/IInterface.h"
10#include "Gaudi/Property.h"
14#include "Acts/EventData/TrackParameters.hpp"
29class ExtrapolationCell;
41 virtual StatusCode
finalize()
override;
64 Gaudi::Property<std::string>
m_filePath{
this,
"FilePath",
"propsteps.root",
"Output root file for charged particle"};
65 Gaudi::Property<std::string>
m_treeName{
this,
"TreeName",
"propsteps",
""};
std::vector< int > m_s_boundaryID
boundary identification
ActsPropStepRootWriterSvc(const std::string &name, ISvcLocator *svc)
std::vector< float > m_s_pR
global position z of the step
TTree * m_outputTree
the output tree
Gaudi::Property< std::string > m_filePath
void doWrite(const StepVector &steps, size_t evtNum)
std::deque< queue_item_t > m_queue
std::vector< int > m_s_volumeID
volume identification
std::vector< float > m_s_pZ
global position z of the step
void write(const StepVector &steps) override
virtual StatusCode initialize() override
std::vector< Acts::detail::Step > StepVector
std::atomic< bool > m_doEnd
virtual StatusCode finalize() override
std::pair< size_t, StepVector > queue_item_t
Gaudi::Property< std::string > m_treeName
std::vector< int > m_s_approachID
approach identification
std::thread m_writeThread
std::vector< float > m_s_pX
global position x of the step
std::vector< int > m_s_layerID
layer identification
std::vector< int > m_s_sensitiveID
sensitive identification
TFile * m_outputFile
the output file
std::vector< float > m_s_pY
global position y of the step