![]() |
OpenSWMM Engine
6.0.0-alpha.4
Data-oriented, plugin-extensible SWMM Engine (6.0.0-alpha.4)
|
One item in the IOThread write queue. More...
#include <WriteTask.hpp>
Public Member Functions | |
| WriteTask ()=default | |
| Construct an empty/default snapshot task with sequence zero. | |
| WriteTask (SimulationSnapshot snap, int seq=0) | |
| Take snapshot ownership for deferred plugin delivery. | |
| WriteTask (WriteTask &&) noexcept=default | |
| Move snapshot ownership and copy the sequence, leaving moved-from storage valid. | |
| WriteTask & | operator= (WriteTask &&) noexcept=default |
| Replace the snapshot/sequence by defaulted move assignment. | |
| WriteTask (const WriteTask &)=delete | |
| Disable copying of potentially large snapshot payloads. | |
| WriteTask & | operator= (const WriteTask &)=delete |
| Disable copy assignment of potentially large snapshot payloads. | |
Public Attributes | |
| SimulationSnapshot | snapshot |
| The snapshot to be written (deep copy of relevant SoA slices). | |
| int | sequence = 0 |
| Sequential task index (0-based). Useful for ordering assertions. | |
One item in the IOThread write queue.
Moved into the queue from the simulation thread; consumed by the IO thread. Ownership of all vector data is transferred with the move, so no copies are made for typical usage.
|
default |
Construct an empty/default snapshot task with sequence zero.
|
inlineexplicit |
Take snapshot ownership for deferred plugin delivery.
| snap | Snapshot by value, moved into the task; callers can move large owned vector payloads instead of copying them. Referenced nonowned metadata still follows SimulationSnapshot's lifetime contract. |
| seq | Raw ordering index copied without range/uniqueness validation. |
|
defaultnoexcept |
Move snapshot ownership and copy the sequence, leaving moved-from storage valid.
|
delete |
Disable copying of potentially large snapshot payloads.
Disable copy assignment of potentially large snapshot payloads.
Replace the snapshot/sequence by defaulted move assignment.
| int openswmm::WriteTask::sequence = 0 |
Sequential task index (0-based). Useful for ordering assertions.
| SimulationSnapshot openswmm::WriteTask::snapshot |
The snapshot to be written (deep copy of relevant SoA slices).