// Copyright (2019-2024) Paul Scherrer Institute #ifndef JUNGFRAUJOCH_AZIMUTHALINTEGRATION_H #define JUNGFRAUJOCH_AZIMUTHALINTEGRATION_H #include #include #include #include "../common/DiffractionExperiment.h" #include "AzimuthalIntegrationMapping.h" class AzimuthalIntegration { std::vector pixel_to_bin; std::vector corrections; std::vector solid_angle_corr; const uint16_t nbins; std::vector sum; std::vector count; public: AzimuthalIntegration(const DiffractionExperiment& experiment, const AzimuthalIntegrationMapping& mapping); void Process(const int16_t *data, size_t npixel); void GetResult(std::vector &result) const; }; #endif //JUNGFRAUJOCH_AZIMUTHALINTEGRATION_H