Да, все cl::
объекты наследуют operator()
от cl::detail::Wrapper< T >
, что возвращает их тип cl_type.Таким образом, он может быть использован как:
cl::context x;
cl_context c = x();
Также вы можете использовать cl::ImageGL
, который ведет себя как cl::Image
и создается из текстуры OpenGL именно через вызов clCreateFromGlTexture()
.
Обратите внимание, что вы все равно должны использовать clEnqueueAcquireGLObjects
и clEnqueueReleaseGLObjects
даже при использовании классов c ++.