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 )
a4  OpenGL extension NV.fragment_program_option

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

Overview (from the spec)
	
	This extension provides additional fragment program functionality
	to extend the standard ARB_fragment_program language and execution
	environment.  ARB programs wishing to use this added functionality
	need only add:
	
	    OPTION NV_fragment_program;
	
	to the beginning of their fragment programs.
	
	The functionality provided by this extension, which is roughly
	equivalent to that provided by the NV_fragment_program extension,
	includes:
	
	  * increased control over precision in arithmetic computations and
	    storage,
	
	  * data-dependent conditional writemasks,
	
	  * an absolute value operator on scalar and swizzled operand loads,
	
	  * instructions to compute partial derivatives, and perform texture
	    lookups using specified partial derivatives,
	
	  * fully orthogonal "set on" instructions,
	
	  * instructions to compute reflection vector and perform a 2D
	    coordinate transform, and
	
	  * instructions to pack and unpack multiple quantities into a single
	    component.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/NV/fragment_program_option.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   úb/home/ghrups/robot-bench/.venv/lib/python3.9/site-packages/OpenGL/GL/NV/fragment_program_option.pyÚglInitFragmentProgramOptionNV2   s    r   )Ú__doc__r   r   r   r   r   r   ÚctypesZOpenGL.raw.GLr   r   Z(OpenGL.raw.GL.NV.fragment_program_optionr
   r   r   r   r   r   Ú<module>   s   *