
    3j?!              
          S r SSKJrJrJr  SSKJrJr  SSKrSSKJ	r	J
r
  SSK7  SSKJr  S r\R                  " \5      R                  S	S5      r\R                  " \5      R                  S
S5      r\R                  " \5      R                  S
S5      r\R                  " \5      R'                  S
\
R(                  SSS9r\R                  " \5      R'                  S
\
R(                  SSS9r\R                  " \5      R                  SS5      r\R                  " \5      R                  SS5      r\R                  " \5      R                  SS5      r\R                  " \5      R                  S
S5      r\R                  " \5      R                  S
S5      r\R                  " \5      R'                  S
\
R(                  SSS9r\R                  " \5      R'                  S
\
R(                  SSS9r\R                  " \5      R                  SS5      R                  SS5      r\R                  " \5      R'                  S
\
R(                  SSS9r\R                  " \5      R'                  S
\
R(                  SSS9r\R                  " \ 5      R'                  S
\
R(                  SSS9r \R                  " \!5      R'                  S
\
R(                  SSS9r!SSK"J#r#  SSK$J%r&  \#RN                  " \#RP                  " \S	SS95      r\#RN                  " \#RP                  " \SS95      r\#RN                  " \#RP                  " \#RP                  " \SSS9SSS95      r\#RN                  " \#RP                  " \SSS95      r\#RN                  " \#RP                  " \SSS95      r\&" \)5      S 5       r)\&" \*5      S 5       r*\&" \+5      S 5       r+\&" \,5      SS j5       r,\&" \-5      SS j5       r-g)zOpenGL extension ARB.imaging

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

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/ARB/imaging.txt
    )platformconstantarrays)
extensionswrapperN)_types_glgets)*)_EXTENSION_NAMEc                  :    SSK Jn   U R                  " [        5      $ )z=Return boolean indicating whether this extension is availabler   r   )OpenGLr   hasGLExtensionr   r   s    O/home/wildlama/miniconda3/lib/python3.13/site-packages/OpenGL/GL/ARB/imaging.pyglInitImagingARBr      s    !$$o77    tableparamspnameT)sizepnameArgorPassIndataimagecolumnrow)images)lazytype)	pixelNametypeName)r    c           
         [        U[        5      S   4nU[        :w  a  U[        U[        5      S   4-  nUS-  n[        R                  R                  X$U5      n[        R                  [        R                  R                  R                  X35         nU " XU[        R                  " UR                  U5      5      5        U$ )z>Retrieve 1 or 2D convolution parameter "kernels" as pixel datar   )   )glGetConvolutionParameterivGL_CONVOLUTION_WIDTHGL_CONVOLUTION_1DGL_CONVOLUTION_HEIGHTr   SetupPixelReadr   GL_CONSTANT_TO_ARRAY_TYPETYPE_TO_ARRAYTYPEgetctypesc_void_pdataPointerbaseFunctiontargetformatr   dimsarray	arrayTypes          r   glGetConvolutionFilterr6      s     	$V-ACAFD ""'1FHK
 	
 	DLDMM((&>E00''++D6I ..u56 Lr   c                    [        [        5      S   S4n[        [        5      S   S4n[        R                  [
        R
                  R                  R                  X35         n[
        R
                  R                  X$U5      n[
        R
                  R                  X%U5      nU " XU[        R                  " UR                  U5      5      [        R                  " UR                  U5      5      S5        Xx4$ )z;Retrieve 2 1D convolution parameter "kernels" as pixel datar   r#   N)r$   r%   r'   r   r)   r   r*   r+   r(   r,   r-   r.   )	r0   r1   r2   r   rowDims
columnDimsr5   r   r   s	            r   glGetSeparableFilterr:      s     	$%9;A>	G
 	$%:<Q?	J 00''++D6I --
&
&
?C]]))6tEF..s34..v67	 ;r   c           
      8   [        U[        5      S4n[        R                  R                  X$U5      n[        R
                  [        R                  R                  R                  X35         nU " XU[        R                  " UR                  U5      5      5        U$ )z/Retrieve the current 1D color table as a bitmapr#   )glGetColorTableParameterivGL_COLOR_TABLE_WIDTHr   r(   r   r)   r*   r+   r,   r-   r.   r/   s          r   glGetColorTabler>      s     	#6+?@	D MM((&>E00''++D6I ..u56 Lr   c                 >   Uc2  [        U[        5      n[        R                  R                  X6S4U5      n[        R
                  [        R                  R                  R                  XD5         nU " XX4[        R                  " UR                  U5      5      5        U$ )z,Retrieve current 1D histogram as a 1D bitmapr#   )glGetHistogramParameterivGL_HISTOGRAM_WIDTHr   r(   r   r)   r*   r+   r,   r-   r.   r0   r1   resetr2   r   valueswidthr5   s           r   glGetHistogramrF      s     ~)
 --vay$H00''++D6I v..v67 Mr   c                 "   Uc$  Sn[         R                   R                  X6S4U5      n[        R                  [         R                   R                  R                  XD5         nU " XX4[        R                  " UR                  U5      5      5        U$ )z8Retrieve minimum and maximum values as a 2-element image   r#   )	r   r(   r   r)   r*   r+   r,   r-   r.   rB   s           r   glGetMinmaxrI      s}     ~--vay$H00''++D6I v..v67 Mr   )N).__doc__r   r   r   r   r   r   r,   OpenGL.raw.GLr   r	   OpenGL.raw.GL.ARB.imagingr   r   glColorTablesetInputArraySizeglColorTableParameterfvglColorTableParameterivglGetColorTableParameterfv	setOutput_glget_size_mappingr<   glColorSubTableglConvolutionFilter1DglConvolutionFilter2DglConvolutionParameterfvglConvolutionParameterivglGetConvolutionParameterfvr$   glSeparableFilter2DglGetHistogramParameterfvr@   glGetMinmaxParameterfvglGetMinmaxParameteriv	OpenGL.GLr   OpenGL.lazywrapperr   _lazysetDimensionsAsIntssetImageInputr6   r:   r>   rF   rI    r   r   <module>rd      s^   . - &  ) ' 58 __\*<<T  (?@RRd   (?@RRd  #??+EFPP'--w Q   #??+EFPP'--w Q   0BB
D oo&;<NNT  oo&;<NNT  !)ABTTd  !)ABTTd  $OO,GHRR'--w S   $OO,GHRR'--w S   OO$78JJd	4  "//*CDNN'--w O   "//*CDNN'--w O   '=>HH'--w I   '=>HH'--w I    ,))
 ,,
 00
	

 
  22
  22
    !(  ,    "  r   