o
    Z#a	                     @   sr   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 )   )Image	ImageFileNc                 C   s   | a dS )z_
    Install application-specific FITS image handler.

    :param handler: Handler object.
    N_handler)handler r   9/usr/lib/python3/dist-packages/PIL/FitsStubImagePlugin.pyregister_handler   s   r	   c                 C   s   | d d dkS )N   s   SIMPLEr   )prefixr   r   r   _accept   s   r   c                   @   s$   e Zd ZdZdZdd Zdd ZdS )FITSStubImageFileFITSc           	      C   sX  | j  }i }	 | j d}|std|d d  }|dkr!n(|dd   }|dr6|dd   }|sDt|r@|dkrDtd	|||< qt|d
 }|dkrWt	d|dkredt|d f| _
nt|d t|d f| _
t|d }|dkrd| _n|dkrd| _n|dkrd| _n|dv rd| _| j | |  }|r||  d S d S )NTP   zTruncated FITS file   s   END   =r      TzNot a FITS files   NAXIS    zNo image datas   NAXIS1s   NAXIS2s   BITPIXL   I    )iiF)fptellreadOSErrorstrip
startswithr   SyntaxErrorint
ValueError_sizemodeseek_loadopen)	selfoffsetheadersheaderkeywordvaluenaxisnumber_of_bitsloaderr   r   r   _open(   sH   

zFITSStubImageFile._openc                 C   s   t S )Nr   )r'   r   r   r   r%   T   s   zFITSStubImageFile._loadN)__name__
__module____qualname__formatformat_descriptionr0   r%   r   r   r   r   r   #   s
    ,r   c                 C   s,   t d u s	tddstdt | || d S )Nr   savezFITS save handler not installed)r   hasattrr   r6   )imr   filenamer   r   r   _saveX   s   r:   z.fitz.fits) r   r   r   r	   r   StubImageFiler   r:   register_openr4   register_saveregister_extensionsr   r   r   r   <module>   s   5	