Files
Jungfraujoch/writer/HDF5NXmx.h

35 lines
1.7 KiB
C++

// Copyright (2019-2023) Paul Scherrer Institute
#ifndef JUNGFRAUJOCH_HDF5NXMX_H
#define JUNGFRAUJOCH_HDF5NXMX_H
#include "../frame_serialize/CBORMessages.h"
#include "HDF5Objects.h"
namespace HDF5Metadata {
void NXmx(const StartMessage &start, const EndMessage &end);
void Time(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void LinkToData(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void Detector(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void DetectorModule(HDF5File *hdf5_file, const std::string &name, const std::vector<int32_t> &origin,
const std::vector<int32_t> &size, const std::vector<double> &fast_axis,
const std::vector<double> &slow_axis, const std::string &nx_axis, double pixel_size_mm);
void Facility(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void Beam(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void Metrology(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void Sample(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void Mask(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void Calibration(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void SaveCBORImage(HDF5File *hdf5_file, const std::string& hdf5_path, const CBORImage &image);
void RadInt(HDF5File *hdf5_file, const StartMessage &start, const EndMessage &end);
void ADUHistogram(HDF5File *hdf5_file, const EndMessage &end);
std::string DataFileName(const std::string& prefix, int64_t file_number);
}
#endif //JUNGFRAUJOCH_HDF5NXMX_H