3 #include "ardour/mtdm.h"
6 CPPUNIT_TEST_SUITE_REGISTRATION (MTDMTest);
11 MTDMTest::basicTest ()
16 memset (in, 0, 256 * sizeof (float));
17 MTDM* mtdm = new MTDM (44100);
19 // initialization, need at least 3 cycles
20 // to allow resolution below error limit.
21 for (int i = 0; i < 4; ++i) {
22 mtdm->process (256, in, out);
23 memcpy (in, out, 256 * sizeof (float));
26 for (int i = 0; i < 64; ++i) {
27 mtdm->process (256, in, out);
28 memcpy (in, out, 256 * sizeof (float));
30 CPPUNIT_ASSERT_EQUAL (0, mtdm->resolve ());
31 CPPUNIT_ASSERT (mtdm->err() < 1);
32 CPPUNIT_ASSERT_EQUAL (256.0, rint (mtdm->del()));