Vendor the `CubicInterpolationCUDA` code, improve texture memory management
Vendor the CubicInterpolationCUDA
library, and update it to use the CUDA texture object API instead of texture references, support for which has been removed in CUDA 12.
Compile the CubicInterpolationCUDA
as a stand-alone library (libCubicInterp.a
), and link against it, rather than #include
-ing source files.
Add a new TextureHandlePitched
class which manages creation of 3D textures on which interpolation is performed.
Update the VolumeBSpline
class to use the above.
Add some unit tests for the VolumeBSpline
class, and for the CubicInterp
functions.