diff options
Diffstat (limited to 'gr-blocks/lib/endian_swap_impl.cc')
-rw-r--r-- | gr-blocks/lib/endian_swap_impl.cc | 81 |
1 files changed, 38 insertions, 43 deletions
diff --git a/gr-blocks/lib/endian_swap_impl.cc b/gr-blocks/lib/endian_swap_impl.cc index 604e8b9ad8..e4db818b1e 100644 --- a/gr-blocks/lib/endian_swap_impl.cc +++ b/gr-blocks/lib/endian_swap_impl.cc @@ -29,59 +29,54 @@ #include <volk/volk.h> namespace gr { - namespace blocks { +namespace blocks { - endian_swap::sptr - endian_swap::make(size_t item_size_bytes) - { - return gnuradio::get_initial_sptr - (new endian_swap_impl(item_size_bytes)); - } +endian_swap::sptr endian_swap::make(size_t item_size_bytes) +{ + return gnuradio::get_initial_sptr(new endian_swap_impl(item_size_bytes)); +} - endian_swap_impl::endian_swap_impl (size_t item_size_bytes) - : sync_block("endian_swap_impl", - io_signature::make(1, 1, item_size_bytes), - io_signature::make(1, 1, item_size_bytes)) - { - const int alignment_multiple = volk_get_alignment(); - set_alignment(std::max(1, alignment_multiple)); - } +endian_swap_impl::endian_swap_impl(size_t item_size_bytes) + : sync_block("endian_swap_impl", + io_signature::make(1, 1, item_size_bytes), + io_signature::make(1, 1, item_size_bytes)) +{ + const int alignment_multiple = volk_get_alignment(); + set_alignment(std::max(1, alignment_multiple)); +} - endian_swap_impl::~endian_swap_impl() - { - } +endian_swap_impl::~endian_swap_impl() {} - int - endian_swap_impl::work(int noutput_items, - gr_vector_const_void_star &input_items, - gr_vector_void_star &output_items) - { - const char *in = (const char*)input_items[0]; - char *out = (char*)output_items[0]; +int endian_swap_impl::work(int noutput_items, + gr_vector_const_void_star& input_items, + gr_vector_void_star& output_items) +{ + const char* in = (const char*)input_items[0]; + char* out = (char*)output_items[0]; - int nbytes(output_signature()->sizeof_stream_item(0)); - switch(nbytes){ - case 1: - memcpy(out,in,noutput_items); + int nbytes(output_signature()->sizeof_stream_item(0)); + switch (nbytes) { + case 1: + memcpy(out, in, noutput_items); break; - case 2: - memcpy(out,in,2*noutput_items); - volk_16u_byteswap((uint16_t*)out,noutput_items); + case 2: + memcpy(out, in, 2 * noutput_items); + volk_16u_byteswap((uint16_t*)out, noutput_items); break; - case 4: - memcpy(out,in,4*noutput_items); - volk_32u_byteswap((uint32_t*)out,noutput_items); + case 4: + memcpy(out, in, 4 * noutput_items); + volk_32u_byteswap((uint32_t*)out, noutput_items); break; - case 8: - memcpy(out,in,8*noutput_items); - volk_64u_byteswap((uint64_t*)out,noutput_items); + case 8: + memcpy(out, in, 8 * noutput_items); + volk_64u_byteswap((uint64_t*)out, noutput_items); break; - default: + default: throw std::runtime_error("itemsize is not valid for endian_swap!"); - } - - return noutput_items; } - } /* namespace blocks */ + return noutput_items; +} + +} /* namespace blocks */ } /* namespace gr */ |