Class INTELSharingFormatQuery


  • public class INTELSharingFormatQuery
    extends java.lang.Object
    Native bindings to the intel_sharing_format_query extension.

    Existing interop / sharing extensions require support for a minimum set of image formats, however many OpenCL implementations may support sharing image formats above and beyond the minimum. This extension provides a mechanism for an application to query the set of API-specific image formats that an OpenCL implementation can accept for sharing.

    Note that the query functionality provided by this extension does not replace API-specific query functions or guarantee that an API-specific image with the returned format may be created. Additionally, some APIs may require that a buffer or image be created with particular flags or parameters to be shared with OpenCL, so this extension does not guarantee that all API-specific images of the queried formats may be shared with OpenCL. It does, however, guarantee that some API-specific images of the queried formats may be shared with OpenCL.

    • Method Detail

      • nclGetSupportedGLTextureFormatsINTEL

        public static int nclGetSupportedGLTextureFormatsINTEL​(long context,
                                                               long flags,
                                                               int image_type,
                                                               int num_entries,
                                                               long gl_formats,
                                                               long num_texture_formats)
        Parameters:
        num_entries - specifies the number of entries that can be returned in the memory location given by gl_formats
      • clGetSupportedGLTextureFormatsINTEL

        public static int clGetSupportedGLTextureFormatsINTEL​(long context,
                                                              long flags,
                                                              int image_type,
                                                              @Nullable
                                                              java.nio.IntBuffer gl_formats,
                                                              @Nullable
                                                              java.nio.IntBuffer num_texture_formats)
        Can be used to query the list of OpenGL internal texture formats supported for sharing with an OpenCL implementation, given flags indicating how the image is going to be used and image_type indicating the type of image to create.

        If there are multiple devices in the context, the returned set of image formats is the union of image formats supported by all devices in the context.

        Parameters:
        context - a valid OpenCL context created from an OpenGL context
        flags - a bit-field used to specify usage information about the image memory object that will be created from the OpenGL texture
        image_type - describes the type of image that will be created from the OpenGL texture
        gl_formats - a pointer to a memory location where the list of supported OpenGL internal texture formats supported for sharing is returned. If gl_formats is NULL, it is ignored.
        num_texture_formats - returns the actual total number of supported OpenGL internal texture formats for the specified context and flags for the specified image_type. If num_texture_formats is NULL, it is ignored.
      • nclGetSupportedVA_APIMediaSurfaceFormatsINTEL

        public static int nclGetSupportedVA_APIMediaSurfaceFormatsINTEL​(long context,
                                                                        long flags,
                                                                        int image_type,
                                                                        int plane,
                                                                        int num_entries,
                                                                        long va_api_formats,
                                                                        long num_surface_formats)
        Parameters:
        num_entries - the number of entries that can be returned in the memory location given by va_api_formats
      • clGetSupportedVA_APIMediaSurfaceFormatsINTEL

        public static int clGetSupportedVA_APIMediaSurfaceFormatsINTEL​(long context,
                                                                       long flags,
                                                                       int image_type,
                                                                       int plane,
                                                                       @Nullable
                                                                       org.lwjgl.PointerBuffer va_api_formats,
                                                                       @Nullable
                                                                       java.nio.IntBuffer num_surface_formats)
        Can be used to query the list of VA_API media image formats supported for sharing with an OpenCL implementation, given flags indicating how the image is going to be used and image_type indicating the type of image to create.

        If there are multiple devices in the context, the returned set of image formats is the union of VA_API media image formats supported by all devices in the context.

        Parameters:
        context - a valid OpenCL context that supports sharing VA_API media images
        flags - a bit-field used to specify usage information about the image memory object that will be created from the VA_API media image
        image_type - describes the type of image that will be created from the VA_API media image
        plane - the plane that will be shared, for planar surface formats
        va_api_formats - a pointer to a memory location where the list of supported VA_API media image formats supported for sharing is returned. If va_api_formats is NULL, it is ignored.
        num_surface_formats - returns the actual total number of supported VA_API media image formats for the specified context and flags for the specified image_type. If num_surface_formats is NULL, it is ignored.
      • clGetSupportedGLTextureFormatsINTEL

        public static int clGetSupportedGLTextureFormatsINTEL​(long context,
                                                              long flags,
                                                              int image_type,
                                                              @Nullable
                                                              int[] gl_formats,
                                                              @Nullable
                                                              int[] num_texture_formats)
      • clGetSupportedVA_APIMediaSurfaceFormatsINTEL

        public static int clGetSupportedVA_APIMediaSurfaceFormatsINTEL​(long context,
                                                                       long flags,
                                                                       int image_type,
                                                                       int plane,
                                                                       @Nullable
                                                                       org.lwjgl.PointerBuffer va_api_formats,
                                                                       @Nullable
                                                                       int[] num_surface_formats)