B
    -¦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   ú;/tmp/pip-unpacked-wheel-rysjrues/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   sb  | j  ¡ }i }x„| j  d¡}|s(tdƒ‚|d d…  ¡ }|dkrBP |dd …  ¡ }| d¡rl|dd …  ¡ }|sˆt|ƒr€|dkrˆtdƒ‚|||< qW t|d	 ƒ}|d
kr²t	dƒ‚n6|dkrÎd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  |¡ |  ¡ }|r^| | ¡ d S )NéP   zTruncated FITS fileé   s   ENDó   =r   ó   TzNot a FITS files   NAXISé    zNo image datas   NAXIS1s   NAXIS2s   BITPIXÚLé   ÚIé    )iàÿÿÿiÀÿÿÿÚF)Ú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ƒstdƒ‚t  | ||¡ d S )Nr   ÚsavezFITS save handler not installed)r   Úhasattrr   r2   )Zimr   Úfilenamer   r   r   Ú_saveX   s    r5   z.fitz.fits)Ú r   r   r   r   r   ZStubImageFiler   r5   Zregister_openr0   Zregister_saveZregister_extensionsr   r   r   r   Ú<module>   s   5	