
    e8                       d dl mZ ddlmZmZ dad Zd Z G d dej                        Z	d	 Z
 ej                  e	j                  e	e        ej                  e	j                  e
        ej                  e	j                  d
       y)    )annotations   )Image	ImageFileNc                    | a y)z_
    Install application-specific BUFR image handler.

    :param handler: Handler object.
    N_handler)handlers    9/usr/lib/python3/dist-packages/PIL/BufrStubImagePlugin.pyregister_handlerr      s	     H    c                &    | d d dk(  xs | d d dk(  S )N   s   BUFRs   ZCZC )prefixs    r   _acceptr       s#    "1: 9F2AJ'$99r   c                       e Zd ZdZdZd Zd Zy)BufrStubImageFileBUFRc                4   | j                   j                         }t        | j                   j                  d            sd}t	        |      | j                   j                  |       d| _        d| _        | j                         }|r|j                  |        y y )Nr   zNot a BUFR fileF)r   r   )
fptellr   readSyntaxErrorseek_mode_size_loadopen)selfoffsetmsgloaders       r   _openzBufrStubImageFile._open(   st    tww||A'#Cc""V 

KK r   c                    t         S )Nr   )r!   s    r   r   zBufrStubImageFile._load9   s    r   N)__name__
__module____qualname__formatformat_descriptionr%   r   r   r   r   r   r   $   s    F"r   r   c                x    t         t        t         d      sd}t        |      t         j                  | ||       y )NsavezBUFR save handler not installed)r	   hasattrOSErrorr-   )imr   filenamer#   s       r   _saver2   =   s0    wx8/clMM"b(#r   z.bufr)
__future__r    r   r   r	   r   r   StubImageFiler   r2   register_openr*   register_saveregister_extensionr   r   r   <module>r9      s    # :	// 2$   %,,.? I   %,,e 4   *117 ;r   