Files
Jungfraujoch/writer/HDF5DataFilePluginMX.h
leonarski_f d315506633 * Enhancements for XFEL
* Enhancements for EIGER
* Writer is more flexible and capable of handling DECTRIS data
2024-03-05 20:41:47 +01:00

37 lines
1.2 KiB
C++

// Copyright (2019-2024) Paul Scherrer Institute
#ifndef JUNGFRAUJOCH_HDF5DATAFILEPLUGINMX_H
#define JUNGFRAUJOCH_HDF5DATAFILEPLUGINMX_H
#include "HDF5DataFilePlugin.h"
class HDF5DataFilePluginMX : public HDF5DataFilePlugin {
size_t max_spots;
bool res_estimation = false;
// spots
std::unique_ptr<HDF5DataSet> data_set_spot_x = nullptr;
std::unique_ptr<HDF5DataSet> data_set_spot_y = nullptr;
std::unique_ptr<HDF5DataSet> data_set_spot_int = nullptr;
std::unique_ptr<HDF5DataSet> data_set_spot_indexed = nullptr;
std::unique_ptr<HDF5DataSet> data_set_spot_npeaks = nullptr;
std::unique_ptr<HDF5DataSet> data_set_strong_pixel_count = nullptr;
// indexing
std::unique_ptr<HDF5DataSet> data_set_indexed = nullptr;
std::unique_ptr<HDF5DataSet> data_set_indexed_lattice = nullptr;
// res. estimation
std::unique_ptr<HDF5DataSet> data_set_resolution_estimation = nullptr;
public:
explicit HDF5DataFilePluginMX(size_t max_spots);
void SetupSWMRFile(HDF5File &data_file, const DataMessage& msg) override;
void OpenFile(HDF5File &data_file, const DataMessage& msg) override;
void Write(const DataMessage& msg) override;
void Flush() override;
};
#endif //JUNGFRAUJOCH_HDF5DATAFILEPLUGINMX_H