a
    ij|                     @   sv   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eejd
dddZdS )a$  OpenGL extension NV.explicit_multisample

This module customises the behaviour of the 
OpenGL.raw.GL.NV.explicit_multisample to provide a more 
Python-friendly API

Overview (from the spec)
	
	In traditional multisample specs, the API only allows access to the samples
	indirectly through methods such as coverage values and downsampled
	readbacks. NV_explicit_multisample adds a set of new capabilities to allow
	more precise control over the use of multisamples. Specifically, it adds:
	
	 * A query in the API to query the location of samples within the pixel
	
	 * An explicit control for the multisample sample mask to augment the
	   control provided by SampleCoverage
	
	 * A new texture target to wrap a renderbuffer and allow a restricted class
	   of accesses to the samples
	
	 * The ability to fetch a specific sample from a multisampled texture from
	   within a shader
	
	 * A program option to enable the new behavior

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/NV/explicit_multisample.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/GL/NV/explicit_multisample.pyglInitExplicitMultisampleNV%   s    r   val)   T)sizeZorPassIn)__doc__r   r   r   r   r   r   ctypesZOpenGL.raw.GLr   r   Z%OpenGL.raw.GL.NV.explicit_multisampler
   r   ZglGetMultisamplefvNVZ	setOutputr   r   r   r   <module>   s   
