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. |
||
---|---|---|
.. | ||
testing | ||
CMakeLists.txt | ||
ControlSignatureTagBase.h | ||
Transport.h | ||
TransportTagArrayIn.h | ||
TransportTagArrayInOut.h | ||
TransportTagArrayOut.h | ||
TransportTagAtomicArray.h | ||
TransportTagCellSetIn.h | ||
TransportTagExecObject.h | ||
TransportTagKeyedValuesIn.h | ||
TransportTagKeyedValuesInOut.h | ||
TransportTagKeyedValuesOut.h | ||
TransportTagKeysIn.h | ||
TransportTagTopologyFieldIn.h | ||
TransportTagWholeArrayIn.h | ||
TransportTagWholeArrayInOut.h | ||
TransportTagWholeArrayOut.h | ||
TypeCheck.h | ||
TypeCheckTagArray.h | ||
TypeCheckTagAtomicArray.h | ||
TypeCheckTagCellSet.h | ||
TypeCheckTagCellSetStructured.h | ||
TypeCheckTagExecObject.h | ||
TypeCheckTagKeys.h |