OpenSWMM Engine  6.0.0-alpha.3
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.3)
Loading...
Searching...
No Matches
WriteTask.hpp
Go to the documentation of this file.
1
21
22#ifndef OPENSWMM_ENGINE_WRITE_TASK_HPP
23#define OPENSWMM_ENGINE_WRITE_TASK_HPP
24
26
27namespace openswmm {
28
38struct WriteTask {
41
43 int sequence = 0;
44
45 WriteTask() = default;
46
47 explicit WriteTask(SimulationSnapshot snap, int seq = 0)
48 : snapshot(std::move(snap)), sequence(seq) {}
49
50 // Movable; not copyable (snapshots can be large)
51 WriteTask(WriteTask&&) noexcept = default;
52 WriteTask& operator=(WriteTask&&) noexcept = default;
53 WriteTask(const WriteTask&) = delete;
54 WriteTask& operator=(const WriteTask&) = delete;
55};
56
57} /* namespace openswmm */
58
59#endif /* OPENSWMM_ENGINE_WRITE_TASK_HPP */
Read-only snapshot of simulation state passed to plugins.
Definition NodeCoupling.cpp:15
Complete simulation state snapshot at one output time step.
Definition SimulationSnapshot.hpp:101
WriteTask(WriteTask &&) noexcept=default
WriteTask(SimulationSnapshot snap, int seq=0)
Definition WriteTask.hpp:47
SimulationSnapshot snapshot
The snapshot to be written (deep copy of relevant SoA slices).
Definition WriteTask.hpp:40
int sequence
Sequential task index (0-based). Useful for ordering assertions.
Definition WriteTask.hpp:43