o
    :Î®c+  ã                   @   s$   G d d„ de ƒZG dd„ de ƒZdS )c                   @   ó    e Zd ZdZdd„ Zdd„ ZdS )ÚCounterCallbackz<Callback to count number of iterations of iterative solvers.c                 C   ó
   d| _ d S ©Né    ©Ún©Úself© r
   ú@/tmp/pip-target-vg8gfxp4/lib/python/pymatting/solver/callback.pyÚ__init__   ó   
zCounterCallback.__init__c                 C   s   |  j d7  _ d S )Né   r   ©r	   ÚAÚxÚbÚnorm_bÚrÚnorm_rr
   r
   r   Ú__call__   s   zCounterCallback.__call__N©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r
   r
   r
   r   r      s    r   c                   @   r   )ÚProgressCallbackzf
    Callback to count number of iterations of iterative solvers.
    Also prints residual error.
    c                 C   r   r   r   r   r
   r
   r   r      r   zProgressCallback.__init__c                 C   s&   |  j d7  _ td| j ||f ƒ d S )Nr   ziteration %7d - %e (%.20f))r   Úprintr   r
   r
   r   r      s   zProgressCallback.__call__Nr   r
   r
   r
   r   r      s    r   N)Úobjectr   r   r
   r
   r
   r   Ú<module>   s    
