
    I	e                        d Z ddlmZ ddgZddlmZ ddlmZ ddlm	Z	 dd	l
mZmZ dd
lmZmZ erddlmZmZ ddl
mZmZmZmZmZmZmZ  G d de	          ZedfddZdS )z%TIFF codec for the Numcodecs package.    )annotationsregister_codecTiff)BytesIO)registry)Codec   )
TiffWriterTiffFile)TYPE_CHECKINGAny)IterableSequence)	ByteOrderTagTuplePHOTOMETRICPLANARCONFIGEXTRASAMPLECOMPRESSION	PREDICTORc                  X    e Zd ZdZdZdddddddddddddddddi dddfd+d(Zd) Zd,d*ZdS )-r   zTIFF codec for Numcodecs.tifffileNFkey"int | slice | Iterable[int] | Noneseries
int | Nonelevelbigtiffbool	byteorderByteOrder | Noneimagejomebool | NonephotometricPHOTOMETRIC | int | str | NoneplanarconfigPLANARCONFIG | int | str | Noneextrasamples(Sequence[EXTRASAMPLE | int | str] | None
volumetrictileSequence[int] | NonerowsperstripcompressionCOMPRESSION | int | str | Nonecompressionargsdict[str, Any] | None	predictor#PREDICTOR | int | str | bool | Nonesubsamplingtuple[int, int] | Nonemetadata	extratagsSequence[TagTuple] | Nonetruncate
maxworkersc                ,   || _         || _        || _        || _        || _        || _        || _        || _        |	| _        |
| _	        || _
        || _        || _        || _        || _        || _        || _        || _        || _        || _        || _        d S N)r   r   r   r   r    r"   r#   r%   r'   r)   r+   r,   r.   r/   r1   r3   r5   r7   r8   r:   r;   )selfr   r   r   r   r    r"   r#   r%   r'   r)   r+   r,   r.   r/   r1   r3   r5   r7   r8   r:   r;   s                         2lib/python3.11/site-packages/tifffile/numcodecs.py__init__zTiff.__init__B   s    6 
"&(($	(&."& " $    c                   t                      5 }t          || j        | j        | j        | j                  5 }|                    || j        | j        | j	        | j
        | j        | j        | j        | j        | j        | j        | j        | j        | j        | j                   ddd           n# 1 swxY w Y   |                                }ddd           n# 1 swxY w Y   |S )zReturn TIFF file as bytes.)r   r    r"   r#   )r%   r'   r)   r+   r,   r.   r/   r1   r3   r5   r7   r8   r:   r;   N)r   r
   r   r    r"   r#   writer%   r'   r)   r+   r,   r.   r/   r1   r3   r5   r7   r8   r:   r;   getvalue)r>   buffhtifresults        r?   encodezTiff.encodes   s`   YY 	#".{H    		 $ 0!%!2!%!2#!%!2 $ 0$($8"n $ 0!]"n!]#                  0 [[]]F3	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	#4 s5   )CA+B/#C/B3	3C6B3	7CC!Cc           	         t          |          5 }t          |          5 }|                    | j        | j        | j        | j        |          }ddd           n# 1 swxY w Y   ddd           n# 1 swxY w Y   |S )z$Return decoded image as NumPy array.)r   r   r   r;   outN)r   r   asarrayr   r   r   r;   )r>   rE   rK   rF   rG   rH   s         r?   decodezTiff.decode   s    S\\ 	R" ;*# %                	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 s4   A2/AA2A	A2"A	#A22A69A6)*r   r   r   r   r   r   r   r   r    r!   r"   r   r#   r$   r%   r&   r'   r(   r)   r*   r+   r   r,   r-   r.   r   r/   r0   r1   r2   r3   r4   r5   r6   r7   r2   r8   r9   r:   r   r;   r   r=   )__name__
__module____qualname____doc__codec_idr@   rI   rM    rA   r?   r   r   =   s        ##H
 37! &*6:8<AE %)#'6:159=.2*,/3!%3/% /% /% /% /%b  <     rA   Nclsr   rR   
str | NonereturnNonec                2    t          j        | |           dS )z/Register :py:class:`Tiff` codec with Numcodecs.)rR   N)r   r   )rT   rR   s     r?   r   r      s    C(333333rA   )rT   r   rR   rU   rV   rW   )rQ   
__future__r   __all__ior   	numcodecsr   numcodecs.abcr   r   r
   r   typingr   r   collections.abcr   r   r   r   r   r   r   r   r   r   r   rS   rA   r?   <module>r`      sg  @ , + " " " " " "V
$                   * * * * * * * * % % % % % % % % 22222222                 _ _ _ _ _5 _ _ _D !%T 4 4 4 4 4 4 4rA   