#include #include #include #include #include #include namespace DB { namespace ErrorCodes { extern const int NUMBER_OF_ARGUMENTS_DOESNT_MATCH; extern const int BAD_ARGUMENTS; } namespace { template struct MovingSum { using DataType = MovingSumData; using Function = MovingImpl; }; template struct MovingAvg { using DataType = MovingAvgData; using Function = MovingImpl; }; template using MovingSumTemplate = typename MovingSum::Function; template using MovingAvgTemplate = typename MovingAvg::Function; template