EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/sPHENIX/Examples/Io/Root/include/ActsExamples/Io/Root/RootSimHitWriter.hpp>
Classes | |
struct | Config |
Public Member Functions | |
RootSimHitWriter (const Config &cfg, Acts::Logging::Level lvl) | |
~RootSimHitWriter () finaloverride | |
Ensure underlying file is closed. | |
ProcessCode | endRun () finaloverride |
End-of-run hook. | |
Public Member Functions inherited from ActsExamples::WriterT< SimHitContainer > | |
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 &ctx, const SimHitContainer &hits) finaloverride |
Protected Member Functions inherited from ActsExamples::WriterT< SimHitContainer > | |
const Acts::Logger & | logger () const |
Private Attributes | |
Config | m_cfg |
std::mutex | m_writeMutex |
TFile * | m_outputFile = nullptr |
TTree * | m_outputTree = nullptr |
uint32_t | m_eventId |
Event identifier. | |
uint64_t | m_geometryId |
Hit surface identifier. | |
uint64_t | m_particleId |
Event-unique particle identifier a.k.a. barcode. | |
float | m_tx |
True global hit position components in mm. | |
float | m_ty |
float | m_tz |
float | m_tt |
float | m_tpx |
True particle four-momentum in GeV at hit position before interaction. | |
float | m_tpy |
float | m_tpz |
float | m_te |
float | m_deltapx |
True change in particle four-momentum in GeV due to interactions. | |
float | m_deltapy |
float | m_deltapz |
float | m_deltae |
int32_t | m_index |
Hit index along the particle trajectory. | |
uint32_t | m_volumeId |
uint32_t | m_boundaryId |
uint32_t | m_layerId |
uint32_t | m_approachId |
uint32_t | m_sensitiveId |
Write out simulated hits as a flat TTree.
Each entry in the TTree corresponds to one hit for optimum writing speed. The event number is part of the written data.
Safe to use from multiple writer threads. To avoid thread-saftey issues, the writer must be the sole owner of the underlying file. Thus, the output file pointer can not be given from the outside.
Definition at line 31 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 31 of file RootSimHitWriter.hpp
ActsExamples::RootSimHitWriter::RootSimHitWriter | ( | const Config & | cfg, |
Acts::Logging::Level | lvl | ||
) |
Construct the particle writer.
cfg is the configuration object lvl is the logging level
Definition at line 19 of file RootSimHitWriter.cpp.
View newest version in sPHENIX GitHub at line 19 of file RootSimHitWriter.cpp
References ActsExamples::RootSimHitWriter::Config::fileMode, ActsExamples::RootSimHitWriter::Config::filePath, m_approachId, m_boundaryId, m_cfg, m_deltae, m_deltapx, m_deltapy, m_deltapz, m_eventId, m_geometryId, m_index, m_layerId, m_outputFile, m_outputTree, m_particleId, m_sensitiveId, m_te, m_tpx, m_tpy, m_tpz, m_tt, m_tx, m_ty, m_tz, m_volumeId, and ActsExamples::RootSimHitWriter::Config::treeName.
|
finaloverride |
Ensure underlying file is closed.
Definition at line 65 of file RootSimHitWriter.cpp.
View newest version in sPHENIX GitHub at line 65 of file RootSimHitWriter.cpp
|
finaloverridevirtual |
End-of-run hook.
Implements ActsExamples::IWriter.
Definition at line 71 of file RootSimHitWriter.cpp.
View newest version in sPHENIX GitHub at line 71 of file RootSimHitWriter.cpp
References ACTS_VERBOSE, and SUCCESS.
|
finaloverrideprotectedvirtual |
Type-specific write implementation.
[in] | ctx | is the algorithm context |
[in] | hits | are the hits to be written |
Implements ActsExamples::WriterT< SimHitContainer >.
Definition at line 81 of file RootSimHitWriter.cpp.
View newest version in sPHENIX GitHub at line 81 of file RootSimHitWriter.cpp
References ACTS_ERROR, ActsExamples::AlgorithmContext::eventNumber, Acts::UnitConstants::GeV, Acts::UnitConstants::mm, Acts::UnitConstants::ns, and SUCCESS.
|
private |
Definition at line 89 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 89 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 87 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 87 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 65 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 65 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 82 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 82 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
True change in particle four-momentum in GeV due to interactions.
Definition at line 82 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 82 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 82 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 82 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 82 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 82 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Event identifier.
Definition at line 70 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 70 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Hit surface identifier.
Definition at line 72 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 72 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Hit index along the particle trajectory.
Definition at line 84 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 84 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 88 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 88 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 67 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 67 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 68 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 68 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Event-unique particle identifier a.k.a. barcode.
Definition at line 74 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 74 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 90 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 90 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 80 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 80 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
True particle four-momentum in GeV at hit position before interaction.
Definition at line 80 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 80 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 80 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 80 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 80 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 80 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 78 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 78 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
True global hit position components in mm.
Definition at line 76 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 76 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 76 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 76 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 76 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 76 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 86 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 86 of file RootSimHitWriter.hpp
Referenced by RootSimHitWriter().
|
private |
Definition at line 66 of file RootSimHitWriter.hpp.
View newest version in sPHENIX GitHub at line 66 of file RootSimHitWriter.hpp