
    ^j                         d dl Z d dlmZmZmZmZmZmZmZ d dl	Z	d dl
mZmZmZmZmZmZ dZ	 e	j                            d          Zn'# e$ r e	j        j        r e j        d           ew xY weZeZeZeZeZeZ G d de          Z G d d	e          Z G d
 de          Z G d de          Z erej!        Z! ee           ee           ee          ge!_"        ee!_#        ej$        Z$ ee          ege$_"         ee          e$_#        ej%        Z% ee          ege%_"        ee%_#        ej&        Z& ee          ege&_"         ee          e&_#        ej'        Z' ee          ge'_"        de'_#        ej(        Z( ee           ee          ege(_"         ee          e(_#        ej)        Z) ee          ge)_"        de)_#        ej*        Z* ee           ee          ege*_"         ee           e*_#        ej+        Z+ ee           ee          eeeeee ee          eg
xe+_"        Z"ee+_#        ej,        Z, ee           ge,_"        de,_#        d Z-e.dk    r e-            D ]Z/ e0e/           dS dS )    N)c_ulongc_intPOINTER	Structurec_char_pc_uintc_ushort)TimeWindowDisplayXCloseDisplayXDefaultRootWindowXOpenDisplayXrandrzXrandr could not be loaded.c                   f    e Zd Zdefdefdefdefdefdefdefdefd	efd
efdefdefdefdefgZdS )XRRModeInfoidwidthheightdotClock
hSyncStarthSyncEndhTotalhSkew
vSyncStartvSyncEndvTotalname
nameLength	modeFlagsN)	__name__
__module____qualname__RRModer   r   r   XRRModeFlags_fields_     Q/home/agentuser/manim-venv/lib/python3.11/site-packages/pyglet/libs/x11/xrandr.pyr   r      s        				 								!		%HHHr(   r   c                   x    e Zd Zdefdefdefd ee          fdefd ee          fdefd ee          fgZ	d	S )
XRRScreenResources	timestampconfigTimestampncrtccrtcsnoutputoutputsnmodemodesN)
r!   r"   r#   r
   r   r   RRCrtcRROutputr   r&   r'   r(   r)   r+   r+   0   sq        	T"	T"	U#	WWV__-	U#	WWX../	U#	WW[112	HHHr(   r+   c                       e Zd Zdefdefdefdefdefdefdefde	fd	efd
 e
e          fdefd e
e          fdefdefd e
e          fgZdS )XRROutputInfor,   crtcr   nameLenmm_width	mm_height
connectionsubpixel_orderr.   r/   ncloneclonesr2   
npreferredr3   N)r!   r"   r#   r
   r4   r   r   r   
ConnectionSubpixelOrderr   r5   r$   r&   r'   r(   r)   r7   r7   =   s        	4 	6"	8$	5!	7#	7#	:&	=)	5!	776??+	5!	778,,-	5!	5!	776??+HHHr(   r7   c                   ~    e Zd Zdefdefdefdefdefdefdefdefd	 ee          fd
e	fdefd ee          fgZ
dS )XRRCrtcInfor,   xyr   r   moderotationr0   r1   	rotations	npossiblepossibleN)r!   r"   r#   r
   r   r   r$   r   r5   r	   r&   r'   r(   r)   rD   rD   P   s        	t	u	u	v	v	v	u	u	wwx(()	x 	u	wwx(()HHHr(   rD   c                     t          d           } | st          d          t          |           }t          | |          }|st	          |            t          d          |j        }g }t          |j                  D ]o}|j        |         }t          | ||          }|rM|j        }|j
        dk    r,|                    |j                                                   t          |           pt          |           t	          |            |S )NzCannot open DISPLAYzFailed to get screen resourcesr   )r   RuntimeErrorr   XRRGetScreenResourcesr   contentsranger0   r1   XRRGetOutputInfor<   appendr   decodeXRRFreeOutputInfoXRRFreeScreenResources)	dpyrootres_presr1   iout_idinfo_pinfos	            r)   list_connected_outputsr^      s   
t

C 20111c""D!#t,,E =c;<<<
.CG3; & &Q!#uf55 	&?D!##ty//11222f%%%5!!!#Nr(   __main__)1warningsctypesr   r   r   r   r   r   r	   pygletpyglet.libs.x11.xlibr
   r   r   r   r   r   libload_libraryImportErroroptions	debug_libwarnr4   r5   r$   rA   rB   r%   r   r+   r7   rD   XRRQueryVersionargtypesrestyperN   XRRGetOutputPrimaryXRRGetScreenResourcesCurrentrU   rQ   rT   XRRGetCrtcInfoXRRSetCrtcConfigXRRFreeCrtcInfor^   r!   r   printr'   r(   r)   <module>rs      sk    Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q                 
*
!
!(
+
+CC   ~ 53444

 
    )   &
 
 
 
 
 
 
 
    I   &    )   "  '&)O ' 0 0''%..''%..QO!&O5&-gg&6&6%?"$+G,>$?$?!1$+GG$4$4f#= "*#&#C -4WW-=-=v,F )+273E+F+F ( 7'.w/A'B'B&C#%)"+!(!1!177;M3N3NPX Y ' 6 6-")'-"8"8!9 $'N&ww//9K1L1LfUN$W[11N+,3GG,<,<ggFX>Y>Y[acginpuw}  @E  HO  HO  PX  HY  HY  [`  ,a  a$)O ' 4 45O!%O  4 z&&((  d  s   A	 	$A-