113 lines
2.4 KiB
C++
113 lines
2.4 KiB
C++
#include "test_common.hpp"
|
|
#include <delay/buffer.hpp>
|
|
#include <cstdio>
|
|
|
|
#include <iostream>
|
|
|
|
|
|
int test_buffer_1()
|
|
{
|
|
std::cout << "----------------------------------------------" << std::endl;
|
|
std::cout << "Start test_buffer_1" << std::endl;
|
|
std::cout << "----------------------------------------------" << std::endl;
|
|
|
|
dsp::Buffer<int> buffer(10);
|
|
for (int i=0; i < buffer.capacity(); i++)
|
|
{
|
|
buffer[i] = i+100;
|
|
}
|
|
buffer += 5;
|
|
{
|
|
dsp::Buffer<int> t_buf{105, 106, 107, 108, 109};
|
|
check(buffer, t_buf, t_buf.capacity());
|
|
}
|
|
|
|
dsp::Buffer<int> res_buf(5);
|
|
for (int i=0; i < res_buf.capacity(); i++)
|
|
{
|
|
int v = buffer[i-5];
|
|
res_buf[i] = v;
|
|
}
|
|
|
|
{
|
|
dsp::Buffer<int> t_buf{100, 101, 102, 103, 104};
|
|
check(res_buf, t_buf);
|
|
}
|
|
|
|
buffer.reset();
|
|
{
|
|
dsp::Buffer<int> t_buf{100, 101, 102, 103, 104, 105, 106, 107, 108, 109};
|
|
check(dsp::Buffer<int>(buffer, 0), t_buf);
|
|
}
|
|
{
|
|
dsp::Buffer<int> t_buf{0, 0, 0, 0, 0, 100, 101, 102, 103, 104};
|
|
check(dsp::Buffer<int>(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<int> buffer(10);
|
|
for (int i=0; i < buffer.capacity(); i++)
|
|
{
|
|
buffer[i] = i+100;
|
|
}
|
|
|
|
{
|
|
dsp::Buffer<int> t_buf{0, 100, 101, 102, 103, 104, 105, 106, 107, 108};
|
|
check(dsp::Buffer<int>(buffer, -1), t_buf);
|
|
}
|
|
{
|
|
dsp::Buffer<int> t_buf{0, 0, 0, 0, 0, 100, 101, 102, 103, 104};
|
|
check(dsp::Buffer<int>(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<int> 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<int>(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;
|
|
} |