Open gl interop
Copy the OpenGL Interop code from DAX and convert it to VTKm.
The TransferToOpenGL function, internally calls CopyFrom() which is templated on the StorageTag and DeviceAdapter. The DAX code used the ArrayHandle.CopyInto() function to safely copy data from the execution environment to an std::vector on the control side. That vector was then passed to OpenGL.
A CopyInto function does not exist for VTKm, so I implemented one in order to make as few modifications to the OpenGL code from DAX.
Major Changes:
-
ArrayHandle (and related classes) have CopyInto function added -
CMakeLists were updated to include the ability to enable openGL interop during configuration
-
OpenGL Interop functionality and tests
-
Magnitude worklet (Used by interop tests)
EDIT
ArrayHandle CopyInto() function is in a separate MR(#121)