EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/sPHENIX/Examples/Io/Root/include/ActsExamples/Io/Root/RootPropagationStepsWriter.hpp>
Classes | |
struct | Config |
Public Member Functions | |
RootPropagationStepsWriter (const Config &cfg, Acts::Logging::Level level=Acts::Logging::INFO) | |
~RootPropagationStepsWriter () override | |
Virtual destructor. | |
ProcessCode | endRun () finaloverride |
End-of-run hook. | |
Public Member Functions inherited from ActsExamples::WriterT< std::vector< PropagationSteps > > | |
WriterT (std::string objectName, std::string writerName, Acts::Logging::Level level) | |
std::string | name () const finaloverride |
Provide the name of the writer. | |
ProcessCode | write (const AlgorithmContext &context) finaloverride |
Read the object and call the type-specific member function. | |
ProcessCode | endRun () override |
No-op default implementation. | |
Public Member Functions inherited from ActsExamples::IWriter | |
virtual | ~IWriter ()=default |
Protected Member Functions | |
ProcessCode | writeT (const AlgorithmContext &context, const std::vector< PropagationSteps > &steps) finaloverride |
Protected Member Functions inherited from ActsExamples::WriterT< std::vector< PropagationSteps > > | |
const Acts::Logger & | logger () const |
Private Attributes | |
Config | m_cfg |
the configuration object | |
std::mutex | m_writeMutex |
protect multi-threaded writes | |
TFile * | m_outputFile |
the output file name | |
TTree * | m_outputTree |
the output tree | |
int | m_eventNr |
the event number of | |
std::vector< int > | m_volumeID |
volume identifier | |
std::vector< int > | m_boundaryID |
boundary identifier | |
std::vector< int > | m_layerID |
layer identifier if | |
std::vector< int > | m_approachID |
surface identifier | |
std::vector< int > | m_sensitiveID |
surface identifier | |
std::vector< float > | m_x |
global x | |
std::vector< float > | m_y |
global y | |
std::vector< float > | m_z |
global z | |
std::vector< float > | m_dx |
global direction x | |
std::vector< float > | m_dy |
global direction y | |
std::vector< float > | m_dz |
global direction z | |
std::vector< int > | m_step_type |
step type | |
std::vector< float > | m_step_acc |
accuracy | |
std::vector< float > | m_step_act |
actor check | |
std::vector< float > | m_step_abt |
aborter | |
std::vector< float > | m_step_usr |
user | |
Write out the steps of test propgations for stepping validation, each step sequence is one entry in the in the root file for optimised data writing speed. The event number is part of the written data.
A common file can be provided for to the writer to attach his TTree, this is done by setting the Config::rootFile pointer to an existing file
Safe to use from multiple writer threads - uses a std::mutex lock.
Definition at line 34 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 34 of file RootPropagationStepsWriter.hpp
ActsExamples::RootPropagationStepsWriter::RootPropagationStepsWriter | ( | const Config & | cfg, |
Acts::Logging::Level | level = Acts::Logging::INFO |
||
) |
Constructor with
cfg | configuration struct |
output | logging level |
Definition at line 24 of file RootPropagationStepsWriter.cpp.
View newest version in sPHENIX GitHub at line 24 of file RootPropagationStepsWriter.cpp
References ActsExamples::RootPropagationStepsWriter::Config::collection, ActsExamples::RootPropagationStepsWriter::Config::fileMode, ActsExamples::RootPropagationStepsWriter::Config::filePath, m_approachID, m_boundaryID, m_cfg, m_dx, m_dy, m_dz, m_eventNr, m_layerID, m_outputFile, m_outputTree, m_sensitiveID, m_step_abt, m_step_acc, m_step_act, m_step_type, m_step_usr, m_volumeID, m_x, m_y, m_z, and ActsExamples::RootPropagationStepsWriter::Config::treeName.
|
override |
Virtual destructor.
Close the file if it's yours
Definition at line 71 of file RootPropagationStepsWriter.cpp.
View newest version in sPHENIX GitHub at line 71 of file RootPropagationStepsWriter.cpp
|
finaloverridevirtual |
End-of-run hook.
Implements ActsExamples::IWriter.
Definition at line 78 of file RootPropagationStepsWriter.cpp.
View newest version in sPHENIX GitHub at line 78 of file RootPropagationStepsWriter.cpp
References ACTS_VERBOSE, and SUCCESS.
|
finaloverrideprotectedvirtual |
This implementation holds the actual writing method and is called by the WriterT<>::write interface
context | The Algorithm context with per event information |
steps | is the data to be written out |
Implements ActsExamples::WriterT< std::vector< PropagationSteps > >.
Definition at line 87 of file RootPropagationStepsWriter.cpp.
View newest version in sPHENIX GitHub at line 87 of file RootPropagationStepsWriter.cpp
References Acts::ConstrainedStep::aborter, Acts::ConstrainedStep::accuracy, Acts::ConstrainedStep::actor, ActsExamples::AlgorithmContext::eventNumber, Acts::Test::step(), propagation_timing::steps, SUCCESS, and Acts::ConstrainedStep::user.
|
private |
surface identifier
Definition at line 76 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 76 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
boundary identifier
Definition at line 74 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 74 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
the configuration object
Definition at line 68 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 68 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
global direction x
Definition at line 81 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 81 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
global direction y
Definition at line 82 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 82 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
global direction z
Definition at line 83 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 83 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
the event number of
Definition at line 72 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 72 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
layer identifier if
Definition at line 75 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 75 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
the output file name
Definition at line 70 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 70 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
the output tree
Definition at line 71 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 71 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
surface identifier
Definition at line 77 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 77 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
aborter
Definition at line 87 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 87 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
accuracy
Definition at line 85 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 85 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
actor check
Definition at line 86 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 86 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
step type
Definition at line 84 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 84 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
user
Definition at line 88 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 88 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
volume identifier
Definition at line 73 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 73 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
protect multi-threaded writes
Definition at line 69 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 69 of file RootPropagationStepsWriter.hpp
|
private |
global x
Definition at line 78 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 78 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
global y
Definition at line 79 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 79 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().
|
private |
global z
Definition at line 80 of file RootPropagationStepsWriter.hpp.
View newest version in sPHENIX GitHub at line 80 of file RootPropagationStepsWriter.hpp
Referenced by RootPropagationStepsWriter().