CORSIKA  @c8_version@
The framework to simulate particle cascades for astroparticle physics
ObservationVolumeWriterParquet.hpp
1 /*
2  * (c) Copyright 2023 CORSIKA Project, corsika-project@lists.kit.edu
3  *
4  * This software is distributed under the terms of the GNU General Public
5  * Licence version 3 (GPL Version 3). See file LICENSE for a full version of
6  * the license.
7  */
8 
9 #pragma once
10 
11 #include <corsika/output/BaseOutput.hpp>
12 #include <corsika/output/ParquetStreamer.hpp>
15 
16 namespace corsika {
17 
19  private:
20  ParquetStreamer output_;
21  unsigned int shower_;
22 
23  public:
30 
34  void startOfLibrary(boost::filesystem::path const& directory) final override;
35 
39  void startOfShower(unsigned int const showerId) final override;
40 
44  void endOfShower(unsigned int const showerId) final override;
45 
52  void endOfLibrary() final override;
53 
54  protected:
58  void write(Code const& pid, HEPEnergyType const& energy, LengthType const& x,
59  LengthType const& y, LengthType const& z, double nx, double ny, double nz,
60  TimeType const& t);
61 
62  }; // class ObservationVolumeWriterParquet
63 
64 } // namespace corsika
65 
66 #include <corsika/detail/modules/writers/ObservationVolumeWriterParquet.inl>
Import and extend the phys::units package.
ObservationVolumeWriterParquet()
Construct an ObservationVolume.
void endOfLibrary() final override
Called at the end of each library.
void write(Code const &pid, HEPEnergyType const &energy, LengthType const &x, LengthType const &y, LengthType const &z, double nx, double ny, double nz, TimeType const &t)
Write a particle to the file.
void endOfShower(unsigned int const showerId) final override
Called at the end of each shower.
This class automates the construction of simple tabular Parquet files using the parquet::StreamWriter...
`, since they are used everywhere as integral part of the framework.
This is the base class for all outputs so that they can be stored in homogeneous containers.
Definition: BaseOutput.hpp:21
void startOfShower(unsigned int const showerId) final override
Called at the beginning of each shower.
void startOfLibrary(boost::filesystem::path const &directory) final override
Called at the start of each library.
Interface to particle properties.