vitrio 0.1.4
High-throughput image I/O for Cryo-Electron Microscopy (CryoEM)
Loading...
Searching...
No Matches
strict_image_transfer_sanitizer.hpp
1// SPDX-License-Identifier: LGPL-2.1-or-later
2
3#pragma once
4
5#include <vitrio/export.hpp>
6#include <vitrio/image_transfer_sanitizer.hpp>
7
8#include <memory>
9
10namespace vitrio
11{
12
23{
24public:
25 std::vector<image_transfer_plan> sanitize(
29 ) const override;
30
37 static const std::shared_ptr<const strict_image_transfer_sanitizer>&
39};
40
41} // namespace vitrio
The regions to transfer between one file and one array.
Definition image_transfer_plan.hpp:34
Decides what becomes of the regions of a plan that do not fit the file or the array they join.
Definition image_transfer_sanitizer.hpp:30
A view of a contiguous sequence of elements.
Definition span.hpp:29
A sanitizer that refuses every region that does not fit.
Definition strict_image_transfer_sanitizer.hpp:23
static const std::shared_ptr< const strict_image_transfer_sanitizer > & get_shared()
Get the instance every use shares.
std::vector< image_transfer_plan > sanitize(const image_transfer_plan &regions, span< const std::size_t > file_extents, span< const std::size_t > array_extents) const override
Get the plans to transfer in place of a plan.