vitrio 0.1.4
High-throughput image I/O for Cryo-Electron Microscopy (CryoEM)
Loading...
Searching...
No Matches
detector_event_timeline_file_read_format_registry.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#include <vector>
9
10namespace vitrio
11{
12
13class detector_event_timeline_file_read_format;
14class detector_event_timeline_file_read_format_selector;
15
20using detector_event_timeline_file_read_format_factory =
21 std::unique_ptr<detector_event_timeline_file_read_format> (*)();
22
37{
38public:
40
44 ) = delete;
47 ) = delete;
49
52 ) = delete;
55 ) = delete;
56
63 VITRIO_API
64 void add(detector_event_timeline_file_read_format_factory factory);
65
72 VITRIO_API
75 ) const;
76
77private:
78 std::vector<detector_event_timeline_file_read_format_factory> m_factories;
79};
80
81} // namespace vitrio
Collects factories of file formats of detector events for bulk registration.
Definition detector_event_timeline_file_read_format_registry.hpp:37
void add(detector_event_timeline_file_read_format_factory factory)
Append a format factory to the registry.
void register_all(detector_event_timeline_file_read_format_selector &selector) const
Instantiate one format per registered factory and register them into a selector.
Holds the file formats of detector events that can be read, selects the most suitable of them for a f...
Definition detector_event_timeline_file_read_format_selector.hpp:32
The ability of one file format of detector events to be read.
Definition detector_event_timeline_file_read_format.hpp:26