After refactoring there are still two major interface issues:
There are too many assumptions about the (accelerator) buffer types in the frontend. There is no guarantee that the buffer type will always expose unique_ptr-like behavior. AFAIK OpenCL uses an opaque buffer type, not pointers, thus making ddrf's unique_ptrclone unusable.
The backend interface is not consistent. Sometimes the buffer is passed directly, sometimes the projection structure itself. This should be cleaned up.
After refactoring there are still two major interface issues:
unique_ptr
-like behavior. AFAIK OpenCL uses an opaque buffer type, not pointers, thus making ddrf'sunique_ptr
clone unusable.