
    i                     @   d dl Z d dlZd dlZd dlZd dlmZmZ d dlmZ da	 G d de      Z
d Zd Z G d	 d
e
      Zeaead Z	 d dlmZ ej$                  Zd Zd ZddZd Zedk(  r)d dlZej4                  j6                  j9                          yy# e$ r eZY Ew xY w)    N)ABCabstractmethod)errorFc                   ~    e Zd Zed        Zed        Zed        Zed        Zed        Zed	d       Z	ed        Z
y)
AbstractCamerac                      y N )selfargskwargss      W/home/obispo/Crisostomo_bridge/mision_env/lib/python3.12/site-packages/pygame/camera.py__init__zAbstractCamera.__init__           c                      yr	   r   r   s    r   startzAbstractCamera.start   r   r   c                      yr	   r   r   s    r   stopzAbstractCamera.stop   r   r   c                      yr	   r   r   s    r   get_sizezAbstractCamera.get_size   r   r   c                      yr	   r   r   s    r   query_imagezAbstractCamera.query_image    r   r   Nc                      yr	   r   )r   	dest_surfs     r   	get_imagezAbstractCamera.get_image$   r   r   c                      yr	   r   r   s    r   get_rawzAbstractCamera.get_raw(   r   r   N)__name__
__module____qualname__r   r   r   r   r   r   r   r    r   r   r   r   r      s                  r   r   c                  8    t         st        d      t               )Nz pygame.camera is not initialized)_is_initr   NotImplementedErrorr   r   r   _pre_init_placeholderr(   -   s    677 
r   c                      t                y r!   )r(   )___s     r   _pre_init_placeholder_varargsr,   6   s    r   c                   0    e Zd ZeZeZeZeZeZeZ	eZ
eZeZy)_PreInitPlaceholderCameraN)r"   r#   r$   r,   r   r   r   get_controlsset_controlsr   r   r   r    r   r   r   r.   r.   :   s/    ,H)E(D0L0L,H/K-I+Gr   r.   c                      t        d      )Nz+pygame is not built with colorspace support)RuntimeError)r   s    r   _colorspace_not_availabler3   J   s    
D
EEr   _camerac                    | dk(  rddl m} |j                  a|j                  ay | dk(  rddl m} |j                  a|j
                  ay | dv rddl m} |j                  a|j
                  ay | dk(  rKddl m} t        j                  d	t        d
       |j                          |j                  a|j
                  ay t        d      )N
opencv-macr   )_camera_opencvopencv)z_camera (msmf)z_camera (v4l2)r4   videocapture)_camera_vidcapturezThe VideoCapture backend is not recommended and may be removed.For Python3 and Windows 8+, there is now a native Windows backend built into pygame.   
stacklevelzunrecognized backend name)pygamer8   list_cameras_darwinlist_cameras	CameraMacCamerar5   r;   warningswarnDeprecationWarninginit
ValueError)backendr8   r5   r;   s       r   _setup_backendrJ   W   s    ,)%99))	H	)%22&&	8	8"++	N	"-) 	
 	!)66#**455r   c                  f   g } t         j                  dk(  rt        j                         d   j                  d      d   }d|v r;dj	                  t        t        j                  |            d d }t        |      dk\  }nt        |      dk\  }|r	 dd l	}| j                  d	       dt         j                  v r| j                  d       dt         j                  v r| j                  d       d	| vr| j                  d	       t         j                  dk(  r| j                  d       t        j                  j                  dd      j                         }|dk(  rd	| v r| j!                  d	       d	g| z   } |dv rd| v r| j!                  d       dg| z   } | S # t        $ r | j                  d
       Y w xY w)Nwin32r   .Server    i     OpenCVz_camera (MSMF)linuxz_camera (V4L2)darwinz
OpenCV-MacVideoCapturePYGAME_CAMERAr9   )
vidcapturer:   )sysplatform	win32_versplitjoinfilterstrisdigitintcv2appendImportErrorosenvirongetlowerremove)possible_backendsversion_codeminimum_satisfiedra   
camera_envs        r   get_backendsrm   }   s   
||w))+A.44S9!<|#776#++|#DEbqIL #L 1T 9 #L 1Q 6;!((2 #,,  !123<<  .((  *
||w  0 4::<JX(($$X.%J)::33..$$^4+,/@@7  ;!(()9:;s   F F0/F0c                 d   t               D cg c]  }|j                          }}|st        d      | |d   n| j                         } | |vrt        j                  dt
        d       	 t        |        day c c}w # t        $ r( d|  d}| dv r| d	k(  rd
nd}|d| dz  }t        |      w xY w)Nz2No camera backends are supported on your platform!r   zNWe don't think this is a supported backend on this system, but we'll try it...r<   r=   z	Backend 'z$' is not supported on your platform!)r9   r7   r:   r:   vidcaprR   z Make sure you have 'z*' installed to be able to use this backendT)	rm   rg   r   rD   rE   WarningrJ   rc   r&   )rI   bbackendsemsgdeps        r   rG   rG      s     $0>2a	2H2HII$_hqk'--/Gh"		

w H3 3  7)#GH>>%7(XC'u,VWD Dks   A9+A> >1B/c                       t         at        aday )NF)r(   rA   r.   rC   r&   r   r   r   quitrv      s     )L&FHr   __main__r!   )rd   rY   rX   rD   abcr   r   r?   r   r&   r   r(   r,   r.   rA   rC   r3   r5   
colorspacerc   rJ   rm   rG   rv   r"   pygame.examples.cameraexamplescameramainr   r   r   <module>r~      s    	  
  # S B 	, 	, %	"F+##J#6L,^@ z! OO! G  +*J+s   B BB