call method
Invoke the configured MovingAverage calculator on data.
Implementation
List<T> call(List<T> data) {
final result = <T>[];
num Function(List<num>) averageFunc;
switch (averageType) {
case AverageType.simple:
case AverageType.weighted:
averageFunc =
(averageType == AverageType.simple) ? _mean : _weightedMean;
final subLists = _window(data, windowSize, partialStart: partialStart);
for (final l in subLists) {
final values = l.map(getValue).toList();
final average = averageFunc(values);
final temp = add(l, average);
result.add(temp);
}
break;
case AverageType.exponential:
result.addAll(_exponential(data, factor));
break;
}
return result;
}