Files
Jungfraujoch/reader/JFJochHttpReader.h
2025-08-27 06:21:10 +02:00

31 lines
983 B
C++

// SPDX-FileCopyrightText: 2025 Filip Leonarski, Paul Scherrer Institute <filip.leonarski@psi.ch>
// SPDX-License-Identifier: GPL-3.0-only
#ifndef JFJOCH_JFJOCHHTTPREADER_H
#define JFJOCH_JFJOCHHTTPREADER_H
#include "JFJochReader.h"
class JFJochHttpReader : public JFJochReader {
mutable std::mutex http_mutex;
std::string addr;
bool LoadImage_i(std::shared_ptr<JFJochReaderDataset> &dataset,
DataMessage& message,
std::vector<uint8_t> &buffer,
int64_t image_number,
bool update_dataset) override;
void Close_i();
std::shared_ptr<JFJochReaderDataset> UpdateDataset_i();
std::vector<float> GetPlot_i(const std::string &plot_type, float fill_value = 0.0) const;
public:
~JFJochHttpReader() override = default;
void ReadURL(const std::string& url);
uint64_t GetNumberOfImages() const override;
void Close() override;
};
#endif //JFJOCH_JFJOCHHTTPREADER_H