diff options
Diffstat (limited to 'host/lib/utils/eeprom_utils.cpp')
-rw-r--r-- | host/lib/utils/eeprom_utils.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/host/lib/utils/eeprom_utils.cpp b/host/lib/utils/eeprom_utils.cpp new file mode 100644 index 000000000..acf81a1ce --- /dev/null +++ b/host/lib/utils/eeprom_utils.cpp @@ -0,0 +1,22 @@ +// +// Copyright 2017 Ettus Research (National Instruments Corp.) +// +// SPDX-License-Identifier: GPL-3.0 +// + +#include "eeprom_utils.hpp" +#include <boost/lexical_cast.hpp> + +uhd::byte_vector_t string_to_uint16_bytes(const std::string &num_str){ + const uint16_t num = boost::lexical_cast<uint16_t>(num_str); + const std::vector<uint8_t> lsb_msb = { + uint8_t(num >> 0), + uint8_t(num >> 8) + }; + return lsb_msb; +} + +std::string uint16_bytes_to_string(const uhd::byte_vector_t &bytes){ + const uint16_t num = (uint16_t(bytes.at(0)) << 0) | (uint16_t(bytes.at(1)) << 8); + return (num == 0 or num == 0xffff)? "" : std::to_string(num); +} |