eb496d0a4d
Transforms are meant to be reusable. Those that hold state cannot be used concurrently. State leakage between runs is dangerous. To fix this: * Add transform::Data - A new base class for extra information emitted by transforms. * Add transform::DataMap - A container of Data, keyed by type. * Add a transform::DataMap field to Transform::Output. * Have FirstIndexOffset emit a FirstIndexOffset::Data. * Deprecate the getters on the transform. Mutability of the transform config is also dangerous as setters can be called while a transform is actively running on another thread. To fix: * Expose a VertexPulling::Config structure and add a constructor that accepts this. * Deprecate the setters on VertexPulling. Also deprecate Transform::Output::diagnostics. Put all the transform diagnostics into the returned Program. Reduces error handling of the client. Change-Id: Ibd228dc2fbf004ede4720e2d6019c024bc5934d1 Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/42264 Reviewed-by: dan sinclair <dsinclair@chromium.org> Reviewed-by: Ryan Harrison <rharrison@chromium.org> Commit-Queue: Ben Clayton <bclayton@google.com> |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
main.cc |