vitrio
0.1.4
High-throughput image I/O for Cryo-Electron Microscopy (CryoEM)
Loading...
Searching...
No Matches
vitrio
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_plan.hpp>
7
#include <vitrio/span.hpp>
8
9
#include <cstddef>
10
#include <vector>
11
12
namespace
vitrio
13
{
14
29
class
VITRIO_API
image_transfer_sanitizer
30
{
31
public
:
32
image_transfer_sanitizer
()
noexcept
;
33
image_transfer_sanitizer
(
const
image_transfer_sanitizer
&
other
) =
delete
;
34
image_transfer_sanitizer
(
image_transfer_sanitizer
&&
other
) =
delete
;
35
virtual
~image_transfer_sanitizer
();
36
37
image_transfer_sanitizer
&
38
operator=(
const
image_transfer_sanitizer
&
other
) =
delete
;
39
image_transfer_sanitizer
&
40
operator=(
image_transfer_sanitizer
&&
other
) =
delete
;
41
61
virtual
std::vector<image_transfer_plan>
sanitize
(
62
const
image_transfer_plan
&
regions
,
63
span<const std::size_t>
file_extents
,
64
span<const std::size_t>
array_extents
65
)
const
= 0;
66
};
67
68
}
// namespace vitrio
vitrio::image_transfer_plan
The regions to transfer between one file and one array.
Definition
image_transfer_plan.hpp:34
vitrio::image_transfer_sanitizer
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
vitrio::image_transfer_sanitizer::sanitize
virtual std::vector< image_transfer_plan > sanitize(const image_transfer_plan ®ions, span< const std::size_t > file_extents, span< const std::size_t > array_extents) const =0
Get the plans to transfer in place of a plan.
vitrio::span
A view of a contiguous sequence of elements.
Definition
span.hpp:29
Generated by
1.9.8