Files
Jungfraujoch/common/Plot.h
2025-09-08 20:28:59 +02:00

34 lines
1.1 KiB
C++

// SPDX-FileCopyrightText: 2024 Filip Leonarski, Paul Scherrer Institute <filip.leonarski@psi.ch>
// SPDX-License-Identifier: GPL-3.0-only
#ifndef JUNGFRAUJOCH_PLOT_H
#define JUNGFRAUJOCH_PLOT_H
#include <vector>
#include <cstdint>
#include <string>
#include <optional>
enum class PlotType {
BkgEstimate, AzInt, AzInt1D, SpotCount, SpotCountLowRes, SpotCountIndexed, SpotCountIceRing,
IndexingRate, IndexingUnitCellLength,
IndexingUnitCellAngle, ErrorPixels, SaturatedPixels, ImageCollectionEfficiency, ReceiverDelay, ReceiverFreeSendBuf,
ROISum, ROIMean, ROIMaxCount, ROIPixels, ROIWeightedX, ROIWeightedY, PacketsReceived, MaxValue,
ResolutionEstimate, IndexingTime, ProfileRadius, BFactor, PixelSum, StrongPixels,
ImageProcessingTime, RefinementBeamX, RefinementBeamY
};
enum class PlotAzintUnit {
Q_recipA, TwoTheta_deg, D_A
};
struct PlotRequest {
PlotType type = PlotType::BkgEstimate;
uint64_t binning = 0;
bool experimental_coord = false;
PlotAzintUnit azint_unit = PlotAzintUnit::Q_recipA;
std::optional<float> fill_value;
};
#endif //JUNGFRAUJOCH_PLOT_H