3

‡ÂZé  ã               @   sf   d dl mZ d dlmZ d dlmZ dZdZdd„ Z	G dd	„ d	eƒZ
eje
je
e	ƒ eje
jd
ƒ dS )é   )ÚImage)Úi32le)ÚPcxImageFilez0.2i±hÞ:c             C   s   t | ƒdkot| ƒtkS )Né   )ÚlenÚi32ÚMAGIC)Úprefix© r
   ú4/usr/lib/python3/dist-packages/PIL/DcxImagePlugin.pyÚ_accept!   s    r   c               @   sH   e Zd ZdZdZdZdd„ Zedd„ ƒZedd	„ ƒZ	d
d„ Z
dd„ ZdS )ÚDcxImageFileZDCXz	Intel DCXFc             C   sv   | j jdƒ}t|ƒtkr tdƒ‚g | _x2tdƒD ]&}t| j jdƒƒ}|sJP | jj|ƒ q0W | j | _d | _	| j
dƒ d S )Nr   znot a DCX filei   é    )ÚfpÚreadr   r   ÚSyntaxErrorÚ_offsetÚrangeÚappendÚ_DcxImageFile__fpÚframeÚseek)ÚselfÚsÚiÚoffsetr
   r
   r   Ú_open.   s    zDcxImageFile._openc             C   s
   t | jƒS )N)r   r   )r   r
   r
   r   Ún_framesA   s    zDcxImageFile.n_framesc             C   s   t | jƒdkS )Nr   )r   r   )r   r
   r
   r   Úis_animatedE   s    zDcxImageFile.is_animatedc             C   s<   | j |ƒsd S || _| j| _| jj| j| ƒ tj| ƒ d S )N)Z_seek_checkr   r   r   r   r   r   r   )r   r   r
   r
   r   r   I   s    
zDcxImageFile.seekc             C   s   | j S )N)r   )r   r
   r
   r   ÚtellQ   s    zDcxImageFile.tellN)Ú__name__Ú
__module__Ú__qualname__ÚformatZformat_descriptionZ!_close_exclusive_fp_after_loadingr   Úpropertyr   r   r   r   r
   r
   r
   r   r   (   s   r   z.dcxN)Ú r   Z_binaryr   r   ZPcxImagePluginr   Ú__version__r   r   r   Zregister_openr#   Zregister_extensionr
   r
   r
   r   Ú<module>   s   -