î
hÐR\í  ã               @   s‹   d  d l  m Z d  d l m Z d  d l m Z d Z d Z d d „  Z	 Gd 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
   úG/var/www/dbchiro/venv/lib/python3.4/site-packages/PIL/DcxImagePlugin.pyÚ_accept!   s    r   c               @   sj   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   s«   |  j  j d ƒ } t | ƒ t k r3 t d ƒ ‚ n  g  |  _ xF t d ƒ D]8 } t |  j  j d ƒ ƒ } | sq Pn  |  j j | ƒ qI W|  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   sP   |  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   -