vitrio 0.1.4
High-throughput image I/O for Cryo-Electron Microscopy (CryoEM)
Loading...
Searching...
No Matches
image_saver.hpp
1// SPDX-License-Identifier: LGPL-2.1-or-later
2
3#pragma once
4
5#include <vitrio/export.hpp>
6
7#include <memory>
8
9namespace vitrio
10{
11
12class completion;
13class const_array;
14
15class image_transaction_plan;
16class image_transfer_sanitizer;
17
31{
32public:
33 image_saver() noexcept;
34 image_saver(const image_saver &other) = delete;
35 image_saver(image_saver &&other) = delete;
36 virtual ~image_saver();
37
38 image_saver& operator=(const image_saver &other) = delete;
39 image_saver& operator=(image_saver &&other) = delete;
40
58 virtual std::shared_ptr<completion> save(
61 std::shared_ptr<const image_transfer_sanitizer> sanitizer
62 ) const = 0;
63};
64
65} // namespace vitrio
A multidimensional array of numbers that cannot be written through.
Definition const_array.hpp:29
Saves the regions of a transaction plan out of one array.
Definition image_saver.hpp:31
virtual std::shared_ptr< completion > save(const_array source, const image_transaction_plan &plan, std::shared_ptr< const image_transfer_sanitizer > sanitizer) const =0
Save every region a transaction plan names.
List of regions to transfer between many files and one array.
Definition image_transaction_plan.hpp:33
A view of a contiguous sequence of elements.
Definition span.hpp:29