o
    `šj±  ã                   @   s    d dl mZ G dd„ deƒZdS )é    )ÚAbstractSampledStatc                       s4   e Zd ZdZdZ‡ fdd„Zdd„ Zdd„ Z‡  ZS )	ÚAvgzR
    An AbstractSampledStat that maintains a simple average over its samples.
    )Ú_initial_valueÚ_samplesÚ_currentc                    s   t ƒ  d¡ d S )Ng        )ÚsuperÚ__init__)Úself©Ú	__class__© úU/home/djax/ivt_ai_plugin/venv/lib/python3.10/site-packages/kafka/metrics/stats/avg.pyr   
   s   zAvg.__init__c                 C   s   | j |7  _ d S )N)Úvalue)r	   ÚsampleÚconfigr   Únowr   r   r   Úupdate   s   z
Avg.updatec                 C   s:   d}d}|D ]}||j 7 }||j7 }q|sdS t|ƒ| S )Nr   )r   Úevent_countÚfloat)r	   Úsamplesr   r   Ú	total_sumÚtotal_countr   r   r   r   Úcombine   s   
zAvg.combine)	Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__r   r   r   Ú__classcell__r   r   r
   r   r      s    r   N)Ú kafka.metrics.stats.sampled_statr   r   r   r   r   r   Ú<module>   s    