ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
FW::RootMaterialTrackWriter Class Reference

Writes out MaterialTrack collections from a root file. More...

#include <acts/blob/master/Examples/Io/Root/include/ACTFW/Io/Root/RootMaterialTrackWriter.hpp>

+ Inheritance diagram for FW::RootMaterialTrackWriter:
+ Collaboration diagram for FW::RootMaterialTrackWriter:

Classes

struct  Config
 

Public Member Functions

 RootMaterialTrackWriter (const Config &cfg, Acts::Logging::Level level=Acts::Logging::INFO)
 
 ~RootMaterialTrackWriter () override
 Virtual destructor.
 
FW::ProcessCode endRun () finaloverride
 Framework intialize method.
 
- Public Member Functions inherited from FW::WriterT< std::vector< Acts::RecordedMaterialTrack > >
 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 FW::IWriter
virtual ~IWriter ()=default
 

Protected Member Functions

ProcessCode writeT (const AlgorithmContext &ctx, const std::vector< Acts::RecordedMaterialTrack > &materialtracks) finaloverride
 
- Protected Member Functions inherited from FW::WriterT< std::vector< Acts::RecordedMaterialTrack > >
const Acts::Loggerlogger () const
 

Private Attributes

Config m_cfg
 The config class.
 
std::mutex m_writeMutex
 mutex used to protect multi-threaded writes
 
TFile * m_outputFile
 The output file name.
 
TTree * m_outputTree
 The output tree name.
 
float m_v_x
 start global x
 
float m_v_y
 start global y
 
float m_v_z
 start global z
 
float m_v_px
 start global momentum x
 
float m_v_py
 start global momentum y
 
float m_v_pz
 start global momentum z
 
float m_v_phi
 start phi direction
 
float m_v_eta
 start eta direction
 
float m_tX0
 thickness in X0/L0
 
float m_tL0
 thickness in X0/L0
 
std::vector< float > m_step_sx
 step x (start) position (optional)
 
std::vector< float > m_step_sy
 step y (start) position (optional)
 
std::vector< float > m_step_sz
 step z (start) position (optional)
 
std::vector< float > m_step_x
 step x position
 
std::vector< float > m_step_y
 step y position
 
std::vector< float > m_step_z
 step z position
 
std::vector< float > m_step_ex
 step x (end) position (optional)
 
std::vector< float > m_step_ey
 step y (end) position (optional)
 
std::vector< float > m_step_ez
 step z (end) position (optional)
 
std::vector< float > m_step_length
 step length
 
std::vector< float > m_step_X0
 step material x0
 
std::vector< float > m_step_L0
 step material l0
 
std::vector< float > m_step_A
 step material A
 
std::vector< float > m_step_Z
 step material Z
 
std::vector< float > m_step_rho
 step material rho
 
std::vector< std::uint64_t > m_sur_id
 ID of the suface associated with the step.
 
std::vector< int32_t > m_sur_type
 Type of the suface associated with the step.
 
std::vector< float > m_sur_x
 
std::vector< float > m_sur_y
 
std::vector< float > m_sur_z
 
std::vector< float > m_sur_range_min
 Min range of the suface associated with the step.
 
std::vector< float > m_sur_range_max
 Max range of the suface associated with the step.
 

Detailed Description

Writes out MaterialTrack collections from a root file.

This service is the root implementation of the IWriterT. It writes out a MaterialTrack which is usually generated from Geant4 material mapping

Definition at line 41 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 41 of file RootMaterialTrackWriter.hpp

Constructor & Destructor Documentation

FW::RootMaterialTrackWriter::~RootMaterialTrackWriter ( )
override

Virtual destructor.

Definition at line 90 of file RootMaterialTrackWriter.cpp.

View newest version in sPHENIX GitHub at line 90 of file RootMaterialTrackWriter.cpp

Member Function Documentation

FW::ProcessCode FW::RootMaterialTrackWriter::endRun ( )
finaloverridevirtual

Framework intialize method.

Implements FW::IWriter.

Definition at line 94 of file RootMaterialTrackWriter.cpp.

View newest version in sPHENIX GitHub at line 94 of file RootMaterialTrackWriter.cpp

References ACTS_INFO, and SUCCESS.

FW::ProcessCode FW::RootMaterialTrackWriter::writeT ( const AlgorithmContext ctx,
const std::vector< Acts::RecordedMaterialTrack > &  materialtracks 
)
finaloverrideprotectedvirtual

and is called by the WriterT<>::write interface

Parameters
ctxThe Algorithm context with per event information
clustersis the data to be written out

Implements FW::WriterT< std::vector< Acts::RecordedMaterialTrack > >.

Definition at line 102 of file RootMaterialTrackWriter.cpp.

View newest version in sPHENIX GitHub at line 102 of file RootMaterialTrackWriter.cpp

References Acts::Surface::bounds(), Acts::CylinderBounds::eHalfLengthZ, Acts::VectorHelpers::eta(), FW::AlgorithmContext::geoContext, Acts::GeometryObject::geoID(), Acts::CylinderBounds::get(), Acts::Surface::intersectionEstimate(), phi, Acts::Intersection::position, Acts::RadialBounds::rMax(), Acts::RadialBounds::rMin(), Acts::GeometryID::setApproach(), Acts::GeometryID::setBoundary(), Acts::GeometryID::setLayer(), Acts::GeometryID::setSensitive(), Acts::GeometryID::setVolume(), SUCCESS, surface(), Acts::Surface::type(), and Acts::GeometryID::value().

+ Here is the call graph for this function:

Member Data Documentation

Config FW::RootMaterialTrackWriter::m_cfg
private

The config class.

Definition at line 84 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 84 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

TFile* FW::RootMaterialTrackWriter::m_outputFile
private

The output file name.

Definition at line 88 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 88 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

TTree* FW::RootMaterialTrackWriter::m_outputTree
private

The output tree name.

Definition at line 90 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 90 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_A
private

step material A

Definition at line 115 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 115 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_ex
private

step x (end) position (optional)

Definition at line 109 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 109 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_ey
private

step y (end) position (optional)

Definition at line 110 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 110 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_ez
private

step z (end) position (optional)

Definition at line 111 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 111 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_L0
private

step material l0

Definition at line 114 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 114 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_length
private

step length

Definition at line 112 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 112 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_rho
private

step material rho

Definition at line 117 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 117 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_sx
private

step x (start) position (optional)

Definition at line 103 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 103 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_sy
private

step y (start) position (optional)

Definition at line 104 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 104 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_sz
private

step z (start) position (optional)

Definition at line 105 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 105 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_x
private

step x position

Definition at line 106 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 106 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_X0
private

step material x0

Definition at line 113 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 113 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_y
private

step y position

Definition at line 107 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 107 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_z
private

step z position

Definition at line 108 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 108 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_step_Z
private

step material Z

Definition at line 116 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 116 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<std::uint64_t> FW::RootMaterialTrackWriter::m_sur_id
private

ID of the suface associated with the step.

Definition at line 120 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 120 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_sur_range_max
private

Max range of the suface associated with the step.

Definition at line 133 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 133 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_sur_range_min
private

Min range of the suface associated with the step.

Definition at line 131 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 131 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<int32_t> FW::RootMaterialTrackWriter::m_sur_type
private

Type of the suface associated with the step.

Definition at line 122 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 122 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_sur_x
private

x position of the center of the suface associated with the step

Definition at line 123 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 123 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_sur_y
private

y position of the center of the suface associated with the step

Definition at line 125 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 125 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::vector<float> FW::RootMaterialTrackWriter::m_sur_z
private

z position of the center of the suface associated with the step

Definition at line 127 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 127 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_tL0
private

thickness in X0/L0

Definition at line 101 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 101 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_tX0
private

thickness in X0/L0

Definition at line 100 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 100 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_v_eta
private

start eta direction

Definition at line 99 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 99 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_v_phi
private

start phi direction

Definition at line 98 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 98 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_v_px
private

start global momentum x

Definition at line 95 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 95 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_v_py
private

start global momentum y

Definition at line 96 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 96 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_v_pz
private

start global momentum z

Definition at line 97 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 97 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_v_x
private

start global x

Definition at line 92 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 92 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_v_y
private

start global y

Definition at line 93 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 93 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

float FW::RootMaterialTrackWriter::m_v_z
private

start global z

Definition at line 94 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 94 of file RootMaterialTrackWriter.hpp

Referenced by RootMaterialTrackWriter().

std::mutex FW::RootMaterialTrackWriter::m_writeMutex
private

mutex used to protect multi-threaded writes

Definition at line 86 of file RootMaterialTrackWriter.hpp.

View newest version in sPHENIX GitHub at line 86 of file RootMaterialTrackWriter.hpp


The documentation for this class was generated from the following files: