mirror of
https://github.com/saymrwulf/uhd.git
synced 2026-05-16 21:10:10 +00:00
We have integer 32-bit serial numbers for MPM devices, for example "1234abcd". For serial numbers which have less than eight digits, e.g. "123abcd", a user may feel inclined to prefix this number with a 0 when they are searching for devices, e.g. "0123abcd". This change makes it so that specifying "0123abcd" will match a device with serial number "123ABCD".
29 lines
885 B
C++
29 lines
885 B
C++
//
|
|
// Copyright 2020 Ettus Research, a National Instruments Brand
|
|
//
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
//
|
|
|
|
#ifndef INCLUDED_UHDLIB_UTILS_SERIAL_NUMBER_HPP
|
|
# define INCLUDED_UHDLIB_UTILS_SERIAL_NUMBER_HPP
|
|
|
|
#include <string>
|
|
|
|
namespace uhd { namespace utils {
|
|
|
|
/*! Convenience function to determine whether two serial numbers refer to the
|
|
* same device. Serial numbers are case-insensitive and ignore leading zeros,
|
|
* so e.g. the strings "0123abcd" and "123ABCD" are considered the same serial
|
|
* number.
|
|
*
|
|
* Serial numbers cannot be longer than 8 characters or have characters outside
|
|
* the range 0-9a-fA-F.
|
|
*
|
|
* \param serial_a The first serial number to compare
|
|
* \param serial_b The second serial number to compare
|
|
*/
|
|
bool serial_numbers_match(const std::string& serial_a, const std::string& serial_b);
|
|
|
|
}}
|
|
|
|
#endif /* INCLUDED_UHDLIB_UTILS_SERIAL_NUMBER_HPP */
|