64958b014b
The original design of invoke and the transport infrastructure relied on the implementation behavior of vtkm::cont types such as ArrayHandle that used an internal shared_ptr to managed state. This allowed passing by value instead of passing by non-const ref when needing to transfer information to the device. As VTK-m adds support for classes that use virtuals the ability to pass by base pointer type allows for us to invoke worklets using a base type without the risk of type slicing. Additional by moving over to a non-const ref Invocation we can update all transports that have 'output' to now be by ref and therefore support types that can't be copied while being 'more' correct. |
||
---|---|---|
.. | ||
internal | ||
testing | ||
ChooseCudaDevice.h | ||
CMakeLists.txt | ||
DeviceAdapterCuda.h | ||
ErrorCuda.h |