11#include <OpenMS/config.h>
45enum class ArrowExportFormat
62struct OPENMS_DLLAPI ArrowSpectraExportConfig
65 ArrowExportFormat format = ArrowExportFormat::Long;
68 std::vector<UInt> ms_levels;
88 std::vector<std::string> columns;
91 bool include_precursor_info =
true;
94 bool include_ion_mobility =
true;
106struct OPENMS_DLLAPI ArrowChromatogramExportConfig
109 ArrowExportFormat format = ArrowExportFormat::Long;
118 std::vector<std::string> columns;
137struct OPENMS_DLLAPI ParquetWriteConfig
140 enum class Compression
150 Compression compression = Compression::ZSTD;
156 int compression_level = 3;
161 int64_t row_group_size = 128 * 1024 * 1024;
166 bool write_statistics =
true;
170 int64_t data_page_size = 1024 * 1024;
186class OPENMS_DLLAPI MSExperimentArrowExport
199 static std::vector<std::string> getSpectraArrowColumnNames(
200 const MSExperiment& exp,
201 const ArrowSpectraExportConfig& config = ArrowSpectraExportConfig{});
211 static std::vector<std::string> getChromatogramArrowColumnNames(
212 const MSExperiment& exp,
213 const ArrowChromatogramExportConfig& config = ArrowChromatogramExportConfig{});
232 static bool exportSpectraToArrowCDataInterface(
233 const MSExperiment& exp,
234 const ArrowSpectraExportConfig& config,
235 ::ArrowSchema* out_schema,
236 ::ArrowArray* out_array);
248 static bool exportChromatogramsToArrowCDataInterface(
249 const MSExperiment& exp,
250 const ArrowChromatogramExportConfig& config,
251 ::ArrowSchema* out_schema,
252 ::ArrowArray* out_array);
326 static bool exportSpectraToParquet(
327 const MSExperiment& exp,
328 const String& filename,
329 const ArrowSpectraExportConfig& config = ArrowSpectraExportConfig{},
330 const ParquetWriteConfig& parquet_config = ParquetWriteConfig{});
345 static bool exportChromatogramsToParquet(
346 const MSExperiment& exp,
347 const String& filename,
348 const ArrowChromatogramExportConfig& config = ArrowChromatogramExportConfig{},
349 const ParquetWriteConfig& parquet_config = ParquetWriteConfig{});
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19