// SPDX-FileCopyrightText: 2024 Filip Leonarski, Paul Scherrer Institute // SPDX-License-Identifier: GPL-3.0-only #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; const uint16_t nbins; std::vector sum; std::vector sum2; 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