
    /j'                    $    S SK Jr   " S S5      rg)    )annotationsc                  F    \ rS rSrS	S jrS
S jrSS jrSS jrSS jrSr	g)MovingAverage   c                6    S/U-  U l         SU l        SU l        g Nr   )_hist_sum_count)selfwindow_sizes     T/app/agent/.venv/lib/python3.13/site-packages/livekit/agents/utils/moving_average.py__init__MovingAverage.__init__   s    #$#"3
	    c                B   U =R                   S-  sl         U R                   [        U R                  5      -  nU R                   [        U R                  5      :  a"  U =R                  U R                  U   -  sl        U =R                  U-  sl        XR                  U'   g )N   )r   lenr	   r
   )r   sampleindexs      r   
add_sampleMovingAverage.add_sample
   sk    qc$**o-;;TZZ(IIE**I		V	"

5r   c                ^    U R                   S:X  a  gU R                  U R                  5       -  $ r   )r   r
   sizer   s    r   get_avgMovingAverage.get_avg   s&    ;;!yy499;&&r   c                \    S/[        U R                  5      -  U l        SU l        SU l        g )Ng        r   )r   r	   r   r
   r   s    r   resetMovingAverage.reset   s&    US_,
	r   c                T    [        U R                  [        U R                  5      5      $ )N)minr   r   r	   r   s    r   r   MovingAverage.size   s    4;;DJJ00r   )r   r	   r
   N)r   intreturnNone)r   floatr%   r&   )r%   r'   )r%   r&   )r%   r$   )
__name__
__module____qualname____firstlineno__r   r   r   r   r   __static_attributes__ r   r   r   r      s    
#'

1r   r   N)
__future__r   r   r-   r   r   <module>r/      s    "1 1r   