5#ifndef ACTSGEOMETRY_ACTSEXCELLWRITERSVC_H
6#define ACTSGEOMETRY_ACTSEXCELLWRITERSVC_H
9#include "GaudiKernel/IInterface.h"
10#include "Gaudi/Property.h"
14#include "Acts/EventData/TrackParameters.hpp"
38 virtual StatusCode
finalize()
override;
59 Gaudi::Property<std::string>
m_filePath{
this,
"FilePath",
"excells_charged.root",
"Output root file for charged particle"};
60 Gaudi::Property<std::string>
m_treeName{
this,
"TreeName",
"extrapolation_charged",
""};
std::deque< queue_item_t > m_queue
std::thread m_writeThread
void store(std::vector< Acts::ExtrapolationCell< Acts::TrackParameters > > &ecells) override
virtual StatusCode initialize() override
Gaudi::Property< bool > m_writeMaterial
Gaudi::Property< bool > m_writeBoundary
std::mutex m_chargedMutex
Acts::ExtrapolationCell< Acts::TrackParameters > ExCellCharged
std::shared_ptr< RootExCellWriter< Acts::TrackParameters > > m_rootEccWriter
std::atomic< bool > m_doEnd
Gaudi::Property< std::string > m_treeName
Gaudi::Property< bool > m_writeSensitive
ActsExCellWriterSvc(const std::string &name, ISvcLocator *svc)
Gaudi::Property< bool > m_writePassive
Gaudi::Property< std::string > m_filePath
virtual StatusCode finalize() override
std::pair< size_t, ExCellCharged > queue_item_t