o
    
’×i   ã                   @  s˜   d dl mZ d dlZd dlmZ ddlmZmZ dadd
d„Z	ddd„Z
G dd„ dejƒZddd„Ze ejee
¡ e eje¡ e ejddg¡ dS ) é    )ÚannotationsN)ÚIOé   )ÚImageÚ	ImageFileÚhandlerúImageFile.StubHandler | NoneÚreturnÚNonec                 C  s   | a dS )z_
    Install application-specific HDF5 image handler.

    :param handler: Handler object.
    N©Ú_handler)r   © r   úU/home/ubuntu/SoloSpeech/.venv/lib/python3.10/site-packages/PIL/Hdf5StubImagePlugin.pyÚregister_handler   s   r   ÚprefixÚbytesÚboolc                 C  s
   |   d¡S )Ns   ‰HDF

)Ú
startswith)r   r   r   r   Ú_accept#   s   
r   c                   @  s(   e Zd ZdZdZd
dd„Zddd„Zd	S )ÚHDF5StubImageFileÚHDF5r	   r
   c                 C  sJ   | j d usJ ‚t| j  d¡ƒsd}t|ƒ‚| j  dtj¡ d| _d| _d S )Né   zNot an HDF fileiøÿÿÿÚF)r   r   )	Úfpr   ÚreadÚSyntaxErrorÚseekÚosÚSEEK_CURÚ_modeÚ_size)ÚselfÚmsgr   r   r   Ú_open+   s   
zHDF5StubImageFile._openr   c                 C  s   t S )Nr   )r!   r   r   r   Ú_load7   s   zHDF5StubImageFile._loadN)r	   r
   )r	   r   )Ú__name__Ú
__module__Ú__qualname__ÚformatÚformat_descriptionr#   r$   r   r   r   r   r   '   s
    
r   ÚimúImage.Imager   ú	IO[bytes]Úfilenameústr | bytesc                 C  s0   t d u s	tt dƒsd}t|ƒ‚t  | ||¡ d S )NÚsavezHDF5 save handler not installed)r   ÚhasattrÚOSErrorr/   )r*   r   r-   r"   r   r   r   Ú_save;   s   r2   z.h5z.hdf)r   r   r	   r
   )r   r   r	   r   )r*   r+   r   r,   r-   r.   r	   r
   )Ú
__future__r   r   Útypingr   Ú r   r   r   r   r   ÚStubImageFiler   r2   Úregister_openr(   Úregister_saveÚregister_extensionsr   r   r   r   Ú<module>   s   




