o
    [ia                     @   sT   d dl mZ d dlmZ d dlmZ ddlmZ ddgiZ	dgZ
G d	d deZd
S )    )absolute_import)partial)Callback   )tqdmzgithub.com/	casperdclTqdmCallbackc                       sH   e Zd ZdZddef fdd	Zdd Zdd Zd	d
 Zdd Z	  Z
S )r   z Dask callback for task progress.Nc                    s2   t t| j||d |rt|fi |}|| _dS )z
        Parameters
        ----------
        tqdm_class  : optional
            `tqdm` class to use for bars [default: `tqdm.auto.tqdm`].
        tqdm_kwargs  : optional
            Any other arguments used for all bars.
        )startpretaskN)superr   __init__r   
tqdm_class)selfr	   r
   r   tqdm_kwargs	__class__ G/home/ubuntu/SoloSpeech/.venv/lib/python3.10/site-packages/tqdm/dask.pyr      s   

zTqdmCallback.__init__c                    s$   | j t fdddD d| _d S )Nc                 3   s    | ]	}t  | V  qd S N)len).0kstater   r   	<genexpr>   s    
z,TqdmCallback._start_state.<locals>.<genexpr>)readywaitingrunningfinished)total)r   sumpbar)r   _r   r   r   r   _start_state   s   zTqdmCallback._start_statec                 O      | j   d S r   )r!   updater   r"   __r   r   r   	_posttask"      zTqdmCallback._posttaskc                 O   r$   r   )r!   closer&   r   r   r   _finish%   r)   zTqdmCallback._finishc                 C   s2   t | jdd}|du rdS ddlm} || dS )z*Displays in the current cell in Notebooks.	containerNr   )display)getattrbarnotebookr-   )r   r,   r-   r   r   r   r-   (   s
   zTqdmCallback.display)__name__
__module____qualname____doc__	tqdm_autor   r#   r(   r+   r-   __classcell__r   r   r   r   r      s    N)
__future__r   	functoolsr   dask.callbacksr   autor   r5   
__author____all__r   r   r   r   r   <module>   s    
