diff options
author | David Robillard <d@drobilla.net> | 2007-03-31 01:40:11 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-03-31 01:40:11 +0000 |
commit | 423cbc959a04b6d54365b943b22936ec6b2a4b62 (patch) | |
tree | 9e349380384b0e8b5532a6507f32e21cfe20a5b9 /tests/ringbuffer_test.cpp | |
parent | 9e81a81484aa0142f0c02cf066c41bd2d2c84eea (diff) | |
download | raul-423cbc959a04b6d54365b943b22936ec6b2a4b62.tar.gz raul-423cbc959a04b6d54365b943b22936ec6b2a4b62.tar.bz2 raul-423cbc959a04b6d54365b943b22936ec6b2a4b62.zip |
Added RingBuffer and MIDIRingBuffer classes/tests.
git-svn-id: http://svn.drobilla.net/lad/raul@382 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'tests/ringbuffer_test.cpp')
-rw-r--r-- | tests/ringbuffer_test.cpp | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/tests/ringbuffer_test.cpp b/tests/ringbuffer_test.cpp new file mode 100644 index 0000000..01f136f --- /dev/null +++ b/tests/ringbuffer_test.cpp @@ -0,0 +1,46 @@ +#include <iostream> +#include "raul/RingBuffer.h" + +using namespace std; +using namespace Raul; + +void +print_buf(size_t size, char* buf) +{ + cout << "{ "; + for (size_t i=0; i < size; ++i) { + cout << buf[i]; + if (i < size-1) + cout << ", "; + } + + cout << " }" << endl; +} + + +int +main() +{ + RingBuffer<char> rb(5); + + char ev[] = { 'a', 'b', 'c' }; + + rb.write(3, ev); + + char buf[3]; + rb.read(3, buf); + print_buf(3, buf); + + char ev2[] = { 'd', 'e', 'f' }; + rb.write(3, ev2); + + + size_t read = rb.read(3, buf); + if (read < 3) + rb.read(3 - read, buf + read); + + print_buf(3, buf); + + return 0; +} + |