vitrio 0.1.4
High-throughput image I/O for Cryo-Electron Microscopy (CryoEM)
Loading...
Searching...
No Matches
image_reader_provider.hpp
1// SPDX-License-Identifier: LGPL-2.1-or-later
2
3#pragma once
4
5#include <vitrio/export.hpp>
6#include <vitrio/image_descriptor.hpp>
7
8#include <memory>
9#include <string>
10
11namespace vitrio
12{
13
14class image_reader;
15
26{
27public:
28 image_reader_provider() noexcept;
31 virtual ~image_reader_provider();
32
34 operator=(const image_reader_provider &other) = delete;
36 operator=(image_reader_provider &&other) = delete;
37
51 virtual std::shared_ptr<const image_reader>
52 acquire(const std::string &key) = 0;
53};
54
70image_descriptor query_descriptor(
72 const std::string &key
73);
74
75} // namespace vitrio
The shape and data type of the values an image file holds.
Definition image_descriptor.hpp:28
Interface to serve image_reader given a key.
Definition image_reader_provider.hpp:26
virtual std::shared_ptr< const image_reader > acquire(const std::string &key)=0
Get the reader a key names.
A view of a contiguous sequence of elements.
Definition span.hpp:29