3

h	                 @   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j	ej
ee ejej
e ej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   W/var/www/html/enquirykeeper_venv/lib/python3.6/site-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 )FITSStubImageFileZFITSc       	      C   sf  | j j }i }x| j jd}|s(td|d d j }|dkrBP |dd  j }|jdrl|dd  j }| rt| s|dkrtd|||< qW t|d	 }|d
krt	dn6|dkrdt|d f| _
nt|d t|d f| _
t|d }|dkr
d| _n4|dkrd| _n"|dkr.d| _n|dkr>d| _| j j| | j }|rb|j|  d S )NP   zTruncated FITS file   s   END   =r      TzNot a FITS files   NAXIS    zNo image datas   NAXIS1s   NAXIS2s   BITPIXL   I    @   F)r   r   )fptellreadOSErrorstrip
startswithr   SyntaxErrorint
ValueError_sizemodeseek_loadopen)	selfoffsetheadersheaderkeywordvalueZnaxisZnumber_of_bitsloaderr   r   r   _open(   sD    






zFITSStubImageFile._openc             C   s   t S )N)r   )r(   r   r   r   r&   T   s    zFITSStubImageFile._loadN)__name__
__module____qualname__formatformat_descriptionr/   r&   r   r   r   r   r   #   s   ,r   c             C   s.   t d kstdd rtdt j| || d S )Nr   savezFITS save handler not installed)r   hasattrr   r5   )Zimr   filenamer   r   r   _saveX   s    r8   z.fitz.fits) r   r   r   r   r   ZStubImageFiler   r8   Zregister_openr3   Zregister_saveZregister_extensionsr   r   r   r   <module>   s   5	