17 #include <parquet/stream_writer.h> 18 #include <parquet/arrow/schema.h> 19 #include <arrow/io/file.h> 44 template <
typename... TArgs>
65 std::shared_ptr<parquet::StreamWriter>
getWriter();
70 bool isInit()
const {
return isInit_; }
74 parquet::WriterProperties::Builder builder_;
75 parquet::schema::NodeVector fields_;
76 std::shared_ptr<parquet::schema::GroupNode> schema_;
77 std::shared_ptr<arrow::io::FileOutputStream> outfile_;
78 std::shared_ptr<parquet::StreamWriter> writer_;
83 #include <corsika/detail/output/ParquetStreamer.inl>
void closeStreamer()
Finish writing this stream.
void initStreamer(std::string const &filepath)
Initialize the streamer to write to a given file.
void enableCompression(int const level=3)
Enable compression for this streamer.
void buildStreamer()
Finalize the streamer construction.
This class automates the construction of simple tabular Parquet files using the parquet::StreamWriter...
std::shared_ptr< parquet::StreamWriter > getWriter()
Return a reference to the underlying writer.
`, since they are used everywhere as integral part of the framework.
ParquetStreamer()
ParquetStreamer's take no constructor arguments.
void addField(TArgs &&... args)
Add a field to this streamer.