a
    i‚j»  ã                   @   s`   d Z ddlmZmZmZ ddlmZmZ ddlZddlm	Z	m
Z
 ddlT ddlmZ dd	„ ZdS )
aÏ  OpenGL extension KHR.shader_subgroup

This module customises the behaviour of the 
OpenGL.raw.GLES2.KHR.shader_subgroup to provide a more 
Python-friendly API

Overview (from the spec)
	
	This extension enables support for the KHR_shader_subgroup shading
	language extension in OpenGL and OpenGL ES.
	
	The extension adds API queries to be able to query
	
	  - the size of subgroups in this implementation (SUBGROUP_SIZE_KHR)
	  - which shader stages support subgroup operations
	    (SUBGROUP_SUPPORTED_STAGES_KHR)
	  - which subgroup features are supported (SUBGROUP_SUPPORTED_FEATURES_KHR)
	  - whether quad subgroup operations are supported in all
	    stages supporting subgroup operations (SUBGROUP_QUAD_ALL_STAGES_KHR)
	
	In OpenGL implementations supporting SPIR-V, this extension enables the
	minimal subset of SPIR-V 1.3 which is required to support the subgroup
	features that are supported by the implementation.
	
	In OpenGL ES implementations, this extension does NOT add support for
	SPIR-V or for any of the built-in shading language functions (8.18)
	that have genDType (double) prototypes.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/KHR/shader_subgroup.txt
é    )ÚplatformÚconstantÚarrays)Ú
extensionsÚwrapperN)Ú_typesÚ_glgets)Ú*)Ú_EXTENSION_NAMEc                  C   s   ddl m}  |  t¡S )z=Return boolean indicating whether this extension is availabler   ©r   )ÚOpenGLr   ZhasGLExtensionr
   r   © r   ú^/home/ghrups/robot-bench/.venv/lib/python3.9/site-packages/OpenGL/GLES2/KHR/shader_subgroup.pyÚglInitShaderSubgroupKHR'   s    r   )Ú__doc__r   r   r   r   r   r   ÚctypesZOpenGL.raw.GLES2r   r   Z$OpenGL.raw.GLES2.KHR.shader_subgroupr
   r   r   r   r   r   Ú<module>   s   