diff options
author | Thomas Habets <thomas@habets.se> | 2020-08-12 13:18:30 +0100 |
---|---|---|
committer | Martin Braun <martin@gnuradio.org> | 2020-08-14 04:08:48 -0700 |
commit | 84e007d9be2a8fe1b3dd050f53fde35f77860a62 (patch) | |
tree | fb28d6ab3eccdf958474446b136f44adc686c06a /gr-digital/lib/qa_header_buffer.cc | |
parent | fe436e255dc378189bc414a8bbb9cdfc44e52783 (diff) |
digital/qa_header: Remove manual memory management
Diffstat (limited to 'gr-digital/lib/qa_header_buffer.cc')
-rw-r--r-- | gr-digital/lib/qa_header_buffer.cc | 30 |
1 files changed, 11 insertions, 19 deletions
diff --git a/gr-digital/lib/qa_header_buffer.cc b/gr-digital/lib/qa_header_buffer.cc index 4b1690f9ac..3fa22e5883 100644 --- a/gr-digital/lib/qa_header_buffer.cc +++ b/gr-digital/lib/qa_header_buffer.cc @@ -15,15 +15,15 @@ #include <gnuradio/attributes.h> #include <gnuradio/digital/header_buffer.h> #include <stdio.h> -#include <volk/volk.h> +#include <volk/volk_alloc.hh> #include <boost/test/unit_test.hpp> BOOST_AUTO_TEST_CASE(test_add8) { size_t len = sizeof(uint8_t); - uint8_t* buf = (uint8_t*)volk_malloc(len, volk_get_alignment()); + volk::vector<uint8_t> buf(len); - gr::digital::header_buffer header(buf); + gr::digital::header_buffer header(buf.data()); header.add_field8(0xAF); BOOST_REQUIRE_EQUAL(len, header.length()); @@ -31,18 +31,16 @@ BOOST_AUTO_TEST_CASE(test_add8) header.clear(); BOOST_REQUIRE_EQUAL((size_t)0, header.length()); - - volk_free(buf); } BOOST_AUTO_TEST_CASE(test_add16) { size_t len = sizeof(uint16_t); - uint8_t* buf = (uint8_t*)volk_malloc(len, volk_get_alignment()); + volk::vector<uint8_t> buf(len); uint16_t data = 0xAF5C; - gr::digital::header_buffer header(buf); + gr::digital::header_buffer header(buf.data()); header.add_field16(data); // Test standard add of a uint16 @@ -72,18 +70,16 @@ BOOST_AUTO_TEST_CASE(test_add16) BOOST_REQUIRE_EQUAL((size_t)1, header.length()); BOOST_REQUIRE_EQUAL((uint8_t)0x5C, header.header()[0]); header.clear(); - - volk_free(buf); } BOOST_AUTO_TEST_CASE(test_add32) { size_t len = sizeof(uint32_t); - uint8_t* buf = (uint8_t*)volk_malloc(len, volk_get_alignment()); + volk::vector<uint8_t> buf(len); uint32_t data = 0xAF5C7654; - gr::digital::header_buffer header(buf); + gr::digital::header_buffer header(buf.data()); header.add_field32(data); // Test standard add of a uint32 @@ -119,18 +115,16 @@ BOOST_AUTO_TEST_CASE(test_add32) BOOST_REQUIRE_EQUAL((uint8_t)0x76, header.header()[1]); BOOST_REQUIRE_EQUAL((uint8_t)0x5C, header.header()[2]); header.clear(); - - volk_free(buf); } BOOST_AUTO_TEST_CASE(test_add64) { size_t len = sizeof(uint64_t); - uint8_t* buf = (uint8_t*)volk_malloc(len, volk_get_alignment()); + volk::vector<uint8_t> buf(len); uint64_t data = 0xAF5C765432104567; - gr::digital::header_buffer header(buf); + gr::digital::header_buffer header(buf.data()); header.add_field64(data); // Test standard add of a uint64 @@ -181,16 +175,14 @@ BOOST_AUTO_TEST_CASE(test_add64) BOOST_REQUIRE_EQUAL((uint8_t)0x32, header.header()[3]); BOOST_REQUIRE_EQUAL((uint8_t)0x54, header.header()[4]); header.clear(); - - volk_free(buf); } BOOST_AUTO_TEST_CASE(test_add_many) { size_t len = (32 + 64 + 8 + 16 + 32) / 8; - uint8_t* buf = (uint8_t*)volk_malloc(len, volk_get_alignment()); + volk::vector<uint8_t> buf(len); - gr::digital::header_buffer header(buf); + gr::digital::header_buffer header(buf.data()); header.add_field32(0x01234567); header.add_field64(0x89ABCDEFFEDCBA98); header.add_field8(0x76); |