e541023bba
Signed-off-by: Thomas Klaehn <thomas.klaehn@u-blox.com>
25 lines
564 B
Python
25 lines
564 B
Python
|
|
class DataBuffer(object):
|
|
def __init__(self, length):
|
|
self.__max = length
|
|
self.__data = []
|
|
|
|
def push(self, element):
|
|
if self.__max == 0:
|
|
return False
|
|
if len(self.__data) == self.__max:
|
|
_ = self.__data.pop(0)
|
|
self.__data.append(element)
|
|
return True
|
|
|
|
def average(self):
|
|
if len(self.__data) is 0:
|
|
return None
|
|
return sum(self.__data) / len(self.__data)
|
|
|
|
def length(self):
|
|
return len(self.__data)
|
|
|
|
def clear(self):
|
|
self.__data = []
|