43 _ar[0]->set_position (P);
44 _ar[0]->set_length (1024);
46 _ar[0]->read_from_sources (_ar[0]->_sources, _ar[0]->_length, buf, P, 256, 0);
47 check_staircase (buf, 0, 256);
49 for (
int i = 0; i <
N; ++i) {
54 _ar[0]->read_from_sources (_ar[0]->_sources, _ar[0]->_length, buf, P + 128, 256, 0);
55 check_staircase (buf, 128, 256);
58 _ar[0]->set_default_fade_in ();
59 CPPUNIT_ASSERT_EQUAL (
double (64), _ar[0]->_fade_in->back()->when);
61 for (
int i = 0; i <
N; ++i) {
65 _ar[0]->read_at (buf, mbuf, gbuf, P, 256, 0);
66 for (
int i = 0; i < 64; ++i) {
68 CPPUNIT_ASSERT_DOUBLES_EQUAL (
float (i * i / 63.0), buf[i], 1e-4);
70 for (
int i = 64; i < P; ++i) {
71 CPPUNIT_ASSERT_EQUAL (i,
int (buf[i]));
78 for (
int i = 0; i <
N; ++i) {
82 _ar[0]->read_at (buf, mbuf, gbuf, P + 128, 256, 0);
83 check_staircase (buf, 128, 256);
89 for (
int i = 0; i <
N; ++i) {
90 int const j = i + offset;
91 CPPUNIT_ASSERT_EQUAL (j,
int (b[i]));
CPPUNIT_TEST_SUITE_REGISTRATION(AudioRegionReadTest)
void check_staircase(ARDOUR::Sample *, int, int)