U
     Ó”e5  ã                   @  s~   d dl mZ ddlmZmZ dadd„ Zdd„ ZG d	d
„ d
ejƒZ	dd„ Z
e e	je	e¡ e e	je
¡ e e	jddg¡ dS )é    )Úannotationsé   )ÚImageÚ	ImageFileNc                 C  s   | a dS )z_
    Install application-specific HDF5 image handler.

    :param handler: Handler object.
    N©Ú_handler)Zhandler© r   ú6lib/python3.8/site-packages/PIL/Hdf5StubImagePlugin.pyÚregister_handler   s    r
   c                 C  s   | d d… dkS )Né   s   ‰HDF

r   )Úprefixr   r   r	   Ú_accept    s    r   c                   @  s$   e Zd ZdZdZdd„ Zdd„ ZdS )ÚHDF5StubImageFileZHDF5c                 C  sX   | j  ¡ }t| j  d¡ƒs&d}t|ƒ‚| j  |¡ d| _d| _|  ¡ }|rT| 	| ¡ d S )Nr   zNot an HDF fileÚF)r   r   )
ÚfpÚtellr   ÚreadÚSyntaxErrorÚseekÚ_modeZ_sizeÚ_loadÚopen)ÚselfÚoffsetÚmsgÚloaderr   r   r	   Ú_open(   s    
zHDF5StubImageFile._openc                 C  s   t S )Nr   )r   r   r   r	   r   9   s    zHDF5StubImageFile._loadN)Ú__name__Ú
__module__Ú__qualname__ÚformatZformat_descriptionr   r   r   r   r   r	   r   $   s   r   c                 C  s0   t d kstt dƒsd}t|ƒ‚t  | ||¡ d S )NÚsavezHDF5 save handler not installed)r   ÚhasattrÚOSErrorr!   )Zimr   Úfilenamer   r   r   r	   Ú_save=   s    r%   z.h5z.hdf)Z
__future__r   Ú r   r   r   r
   r   ZStubImageFiler   r%   Zregister_openr    Zregister_saveZregister_extensionsr   r   r   r	   Ú<module>   s   
