#include "test_common.hpp" #include #include #include int test_buffer_1() { std::cout << "----------------------------------------------" << std::endl; std::cout << "Start test_buffer_1" << std::endl; std::cout << "----------------------------------------------" << std::endl; dsp::Buffer buffer(10); for (int i=0; i < buffer.capacity(); i++) { buffer[i] = i+100; } buffer += 5; { dsp::Buffer t_buf{105, 106, 107, 108, 109}; check(buffer, t_buf, t_buf.capacity()); } dsp::Buffer res_buf(5); for (int i=0; i < res_buf.capacity(); i++) { int v = buffer[i-5]; res_buf[i] = v; } { dsp::Buffer t_buf{100, 101, 102, 103, 104}; check(res_buf, t_buf); } buffer.reset(); { dsp::Buffer t_buf{100, 101, 102, 103, 104, 105, 106, 107, 108, 109}; check(dsp::Buffer(buffer, 0), t_buf); } { dsp::Buffer t_buf{0, 0, 0, 0, 0, 100, 101, 102, 103, 104}; check(dsp::Buffer(buffer, -5), t_buf); } return 0; } int test_buffer_2() { std::cout << "----------------------------------------------" << std::endl; std::cout << "Start test_buffer_2" << std::endl; std::cout << "----------------------------------------------" << std::endl; dsp::Buffer buffer(10); for (int i=0; i < buffer.capacity(); i++) { buffer[i] = i+100; } { dsp::Buffer t_buf{0, 100, 101, 102, 103, 104, 105, 106, 107, 108}; check(dsp::Buffer(buffer, -1), t_buf); } { dsp::Buffer t_buf{0, 0, 0, 0, 0, 100, 101, 102, 103, 104}; check(dsp::Buffer(buffer, -5), t_buf); } return 0; } int test_buffer_3() { std::cout << "----------------------------------------------" << std::endl; std::cout << "Start test_buffer_3" << std::endl; std::cout << "----------------------------------------------" << std::endl; dsp::Buffer buffer(50); for (int i=0; i < buffer.capacity(); i++) { buffer[i] = i+100; } buffer.reset(); uint incr = 5; for (int offset=0; offset < 5; offset++) { std::cout << "----------------------------------------------" << std::endl; std::cout << "offset = " << offset << std::endl; std::cout << "----------------------------------------------" << std::endl; auto v1 = dsp::Buffer(buffer, offset, incr); for(int i=0; i < v1.capacity(); i++) { std::cout << v1[i] << std::endl; } } return 0; } int test_buffer() { test_buffer_1(); test_buffer_2(); test_buffer_3(); return 0; }