î
úÙ XÒ  ã               @   sŠ   d  d l  m Z m Z d  d l m Z d Z d Z e j Z d d „  Z	 Gd d „  d e ƒ Z
 e j e
 j e
 e	 ƒ e j e
 j d	 ƒ d
 S)é    )ÚImageÚ_binary)ÚPcxImageFilez0.2i±hÞ:c             C   s"   t  |  ƒ d k o! t |  ƒ t k S)Né   )ÚlenÚi32ÚMAGIC)Úprefix© r
   úO/home/ubuntu/projects/ifolica/lib/python3.4/site-packages/PIL/DcxImagePlugin.pyÚ_accept"   s    r   c               @   sd   e  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 DCXc             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  |  _ |  j	 d ƒ d  S)Nr   znot a DCX filei   r   )
ÚfpÚreadr   r   ÚSyntaxErrorÚ_offsetÚrangeÚappendÚ_DcxImageFile__fpÚ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_frames@   s    zDcxImageFile.n_framesc             C   s   t  |  j ƒ d k S)Né   )r   r   )r   r
   r
   r   Úis_animatedD   s    zDcxImageFile.is_animatedc             C   sa   | t  |  j ƒ k r$ t d ƒ ‚ n  | |  _ |  j |  _ |  j j |  j | ƒ t j |  ƒ d  S)Nz%attempt to seek outside DCX directory)	r   r   ÚEOFErrorÚframer   r   r   r   r   )r   r   r
   r
   r   r   H   s    	zDcxImageFile.seekc             C   s   |  j  S)N)r   )r   r
   r
   r   ÚtellP   s    zDcxImageFile.tellN)Ú__name__Ú
__module__Ú__qualname__ÚformatZformat_descriptionr   Úpropertyr   r   r   r    r
   r
   r
   r   r   )   s   r   z.dcxN)ZPILr   r   ZPIL.PcxImagePluginr   Ú__version__r   Zi32ler   r   r   Zregister_openr$   Zregister_extensionr
   r
   r
   r   Ú<module>   s   	+