-const int SignalFilter::FILTER_ABS_COSINE = 2;
-const int SignalFilter::FILTER_ABS_SINC = 3;
-const int SignalFilter::FILTER_SHEPP = 4;
-const int SignalFilter::FILTER_BANDLIMIT = 5;
-const int SignalFilter::FILTER_SINC = 6;
-const int SignalFilter::FILTER_G_HAMMING = 7;
-const int SignalFilter::FILTER_COSINE = 8;
-const int SignalFilter::FILTER_TRIANGLE = 9;
-
-const char* SignalFilter::s_aszFilterName[] = {
+const int SignalFilter::FILTER_ABS_HANNING = 2;
+const int SignalFilter::FILTER_ABS_COSINE = 3;
+const int SignalFilter::FILTER_ABS_SINC = 4;
+const int SignalFilter::FILTER_SHEPP = 5;
+const int SignalFilter::FILTER_BANDLIMIT = 6;
+const int SignalFilter::FILTER_SINC = 7;
+const int SignalFilter::FILTER_G_HAMMING = 8;
+const int SignalFilter::FILTER_HANNING = 9;
+const int SignalFilter::FILTER_COSINE = 10;
+const int SignalFilter::FILTER_TRIANGLE = 11;
+
+const int SignalFilter::s_iReconstructFilterCount = 4;
+
+const char* const SignalFilter::s_aszFilterName[] = {