Hello Phill,
I'm thinking about building a class that will use existing headers but will allow fpc developers to use OpenCL with a lot less effort.
As you can see in the following example, I need to type loads of commands to get a running kernel:
https://sourceforge.net/p/cai/svncode/HEAD/tree/trunk/lazarus/opencl/trillion-test/uopencl_trillion_test.pasI'm thinking about a class that:
* Gives available platforms/devices.
* Allows you to pass your OpenCL source code/kernel and leave the kernel (or kernels) ready to run when required.
* No need to care bout with clCreateCommandQueue, clCreateProgramWithSource, clBuildProgram, clCreateKernel ...
* Allows you to run your kernel at the moment you want.
* Takes care about releasing pointers (only used pointers) such as:
clReleaseMemObject(input);
clReleaseMemObject(output);
clReleaseProgram(prog);
clReleaseKernel(kernel);
clReleaseCommandQueue(commands);
clReleaseContext(context);