23 #include "openPMD/IO/AbstractIOHandler.hpp" 24 #include "openPMD/auxiliary/Export.hpp" 25 #include "openPMD/config.hpp" 27 #if openPMD_HAVE_ADIOS1 28 #include "openPMD/IO/AbstractIOHandlerImpl.hpp" 29 #include <adios_read.h> 35 #if openPMD_HAVE_ADIOS1 36 #include <unordered_map> 37 #include <unordered_set> 42 #if openPMD_HAVE_ADIOS1 51 std::future<void> flush();
87 virtual int64_t open_write(
Writable *);
88 virtual ADIOS_FILE *open_read(std::string
const &name);
90 void close(ADIOS_FILE *);
91 int64_t initialize_group(std::string
const &name);
93 flush_attribute(int64_t group, std::string
const &name,
Attribute const &);
96 ADIOS_READ_METHOD m_readMethod;
97 std::unordered_map<Writable *, std::shared_ptr<std::string> > m_filePaths;
98 std::unordered_map<std::shared_ptr<std::string>, int64_t> m_groups;
99 std::unordered_map<std::shared_ptr<std::string>,
bool> m_existsOnDisk;
100 std::unordered_map<std::shared_ptr<std::string>, int64_t>
101 m_openWriteFileHandles;
102 std::unordered_map<std::shared_ptr<std::string>, ADIOS_FILE *>
103 m_openReadFileHandles;
106 ADIOS_SELECTION *selection;
107 std::shared_ptr<void> data;
109 std::unordered_map<ADIOS_FILE *, std::vector<ScheduledRead> >
111 std::unordered_map<int64_t, std::unordered_map<std::string, Attribute> >
121 class OPENPMDAPI_EXPORT ADIOS1IOHandlerImpl
Definition: IOTask.hpp:144
Definition: IOTask.hpp:230
Definition: IOTask.hpp:333
Definition: ADIOS1IOHandlerImpl.hpp:104
Definition: IOTask.hpp:120
Varidic datatype supporting at least all formats for attributes specified in the openPMD standard...
Definition: Attribute.hpp:51
Definition: IOTask.hpp:159
Definition: IOTask.hpp:471
Interface for communicating between logical and physically persistent data.
Definition: AbstractIOHandler.hpp:122
Public definitions of openPMD-api.
Definition: Date.cpp:28
Layer to mirror structure of logical data and persistent data in file.
Definition: Writable.hpp:63
Definition: IOTask.hpp:384
Definition: IOTask.hpp:543
Definition: ADIOS1IOHandlerImpl.hpp:43
Definition: IOTask.hpp:101
Definition: IOTask.hpp:584
Definition: IOTask.hpp:418
Definition: IOTask.hpp:313
Definition: IOTask.hpp:176
Definition: AbstractIOHandlerImpl.hpp:35
Definition: IOTask.hpp:488
Definition: IOTask.hpp:265
Definition: IOTask.hpp:511
Definition: IOTask.hpp:296
Definition: IOTask.hpp:213
Definition: IOTask.hpp:350
Definition: IOTask.hpp:247