vitrio 0.1.4
High-throughput image I/O for Cryo-Electron Microscopy (CryoEM)
Loading...
Searching...
No Matches
image_file_read_format.hpp
1// SPDX-License-Identifier: LGPL-2.1-or-later
2
3#pragma once
4
5#include <vitrio/export.hpp>
6#include <vitrio/image_file_format_suitability.hpp>
7#include <vitrio/image_reader.hpp>
8
9#include <memory>
10#include <string>
11
12namespace vitrio
13{
14
15class image_file_probe;
16
25class VITRIO_API image_file_read_format
26{
27public:
28 image_file_read_format() noexcept;
32
34 operator=(const image_file_read_format &other) = delete;
35 image_file_read_format& operator=(image_file_read_format &&other) = delete;
36
42 virtual std::string get_name() const = 0;
43
58 virtual image_file_format_suitability
59 get_suitability(const image_file_probe &probe) const = 0;
60
72 virtual std::shared_ptr<image_reader> open(
73 const image_file_probe &probe
74 ) const = 0;
75};
76
77} // namespace vitrio
Inmutable brief representation of a file.
Definition image_file_probe.hpp:28
The ability of one image file format to be read.
Definition image_file_read_format.hpp:26
virtual image_file_format_suitability get_suitability(const image_file_probe &probe) const =0
Report how well this format fits a file.
virtual std::shared_ptr< image_reader > open(const image_file_probe &probe) const =0
Open a file for reading.
virtual std::string get_name() const =0
Get the name of this format.