diff --git a/corsika/detail/modules/ObservationPlane.inl b/corsika/detail/modules/ObservationPlane.inl index b3d4b916c5ea6af18ea40d23166d296ae173095b..b40e8d772f694cb0335d4c2410f78a2f6b1c660b 100644 --- a/corsika/detail/modules/ObservationPlane.inl +++ b/corsika/detail/modules/ObservationPlane.inl @@ -51,7 +51,7 @@ namespace corsika { // add our particles to the output file stream this->write(particle.getPID(), energy, displacement.dot(xAxis_), - displacement.dot(yAxis_)); + displacement.dot(yAxis_), particle.getTime()); CORSIKA_LOG_TRACE("Particle detected absorbed={}", deleteOnHit_); diff --git a/corsika/detail/modules/writers/ObservationPlaneWriterParquet.inl b/corsika/detail/modules/writers/ObservationPlaneWriterParquet.inl index 60752c56a9fed06b326449530c2d24d5837d233e..5eef28a41c8d3e487501157fd79a64d7e37c934e 100644 --- a/corsika/detail/modules/writers/ObservationPlaneWriterParquet.inl +++ b/corsika/detail/modules/writers/ObservationPlaneWriterParquet.inl @@ -31,6 +31,8 @@ namespace corsika { parquet::ConvertedType::NONE); output_.addField("y", parquet::Repetition::REQUIRED, parquet::Type::FLOAT, parquet::ConvertedType::NONE); + output_.addField("t", parquet::Repetition::REQUIRED, parquet::Type::FLOAT, + parquet::ConvertedType::NONE); // and build the streamer output_.buildStreamer(); @@ -43,12 +45,13 @@ namespace corsika { inline void ObservationPlaneWriterParquet::write(Code const& pid, HEPEnergyType const& energy, LengthType const& x, - LengthType const& y) { + LengthType const& y, + TimeType const& t) { // write the next row - we must write `shower_` first. *(output_.getWriter()) << shower_ << static_cast<int>(get_PDG(pid)) << static_cast<float>(energy / 1_GeV) << static_cast<float>(x / 1_m) << static_cast<float>(y / 1_m) - << parquet::EndRow; + << static_cast<float>(t / 1_ns) << parquet::EndRow; } } // namespace corsika diff --git a/corsika/modules/writers/ObservationPlaneWriterParquet.hpp b/corsika/modules/writers/ObservationPlaneWriterParquet.hpp index 2a5089c26f129adb6a5281b8474c509096de3ab6..5963aa1002377749c3c2a9876d2a5bee8887b074 100644 --- a/corsika/modules/writers/ObservationPlaneWriterParquet.hpp +++ b/corsika/modules/writers/ObservationPlaneWriterParquet.hpp @@ -50,7 +50,8 @@ namespace corsika { * Write a particle to the file. */ void write(Code const& pid, units::si::HEPEnergyType const& energy, - units::si::LengthType const& x, units::si::LengthType const& y); + units::si::LengthType const& x, units::si::LengthType const& y, + units::si::TimeType const& t); }; // class ObservationPlaneWriterParquet diff --git a/corsika/output/NoOutput.hpp b/corsika/output/NoOutput.hpp index abee413e0d007e1b2de042de0249afe46b07e40a..788149b7047581f57398822fed2c1570189eedb4 100644 --- a/corsika/output/NoOutput.hpp +++ b/corsika/output/NoOutput.hpp @@ -54,7 +54,7 @@ namespace corsika { protected: void write(Code const&, units::si::HEPEnergyType const&, units::si::LengthType const&, - units::si::LengthType const&) {} + units::si::LengthType const&, units::si::TimeType const&) {} }; } // namespace corsika diff --git a/tests/output/testOutputManager.cpp b/tests/output/testOutputManager.cpp index 58f90589c2206ed1e01607cd216a6b76c53a20c9..c9194abfa210e0347e97c50a0dc4add954b03e25 100644 --- a/tests/output/testOutputManager.cpp +++ b/tests/output/testOutputManager.cpp @@ -26,7 +26,7 @@ struct DummyNoOutput : public NoOutput { NoOutput::getConfig(); NoOutput::getSummary(); } - void checkWrite() { NoOutput::write(Code::Unknown, 1_eV, 1_m, 1_m); } + void checkWrite() { NoOutput::write(Code::Unknown, 1_eV, 1_m, 1_m, 1_ns); } }; struct DummyOutput : public BaseOutput { diff --git a/tests/output/testWriterObservationPlane.cpp b/tests/output/testWriterObservationPlane.cpp index 4b780a2b4bbcde53d531f4a6a113d4b2a7087f3a..7289ccc81e142ad7fbce0bd4fb63cb5fb24c0b2d 100644 --- a/tests/output/testWriterObservationPlane.cpp +++ b/tests/output/testWriterObservationPlane.cpp @@ -22,7 +22,7 @@ struct TestWriterPlane : public ObservationPlaneWriterParquet { YAML::Node getConfig() const { return YAML::Node(); } void checkWrite() { - ObservationPlaneWriterParquet::write(Code::Unknown, 1_eV, 2_m, 3_m); + ObservationPlaneWriterParquet::write(Code::Unknown, 1_eV, 2_m, 3_m, 4_ns); } };