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e eˇ d
dˇZe eˇ d
dˇZe eˇjddd„ dddŤZe eˇ ddˇZe eˇ ddˇZdS )a  OpenGL extension NV.vdpau_interop

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

Overview (from the spec)
	
	This extension allows VDPAU video and output surfaces to be used
	for texturing and rendering.
	
	This allows the GL to process and display the content of video
	streams decoded using VDPAU.
	
	Alternatively, the GL may modify VDPAU surfaces in-place, and VDPAU
	may then process and/or display those surfaces itself.
	
	This allows the GL to be used to combine application user-interface
	elements with decoded video, implement custom video-processing
	algorithms, etc.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/NV/vdpau_interop.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   úX/home/ghrups/robot-bench/.venv/lib/python3.9/site-packages/OpenGL/GL/NV/vdpau_interop.pyÚglInitVdpauInteropNV    s    r   ZtextureNamesÚvaluesc                 C   s   | fS )Nr   )Úxr   r   r   Ú<lambda>0   ó    r   ÚcountT)ÚsizeZpnameArgZorPassInZsurfaces)Ú__doc__r   r   r   r   r   r   ÚctypesZOpenGL.raw.GLr   r   ZOpenGL.raw.GL.NV.vdpau_interopr
   r   ZglVDPAURegisterVideoSurfaceNVZsetInputArraySizeZglVDPAURegisterOutputSurfaceNVZglVDPAUGetSurfaceivNVZ	setOutputZglVDPAUMapSurfacesNVZglVDPAUUnmapSurfacesNVr   r   r   r   Ú<module>   s,   
˙
˙
˙
˙
˙