30 class XMSDK_EXPORT SerialNumber
33 explicit SerialNumber(
const std::uint8_t* serialNumberHex);
34 explicit SerialNumber(
const std::uint32_t& serialNumberHex);
35 SerialNumber() =
default;
36 virtual ~SerialNumber();
38 constexpr SensorType GetSensorType()
const {
return type; }
39 constexpr std::uint32_t GetSensorUID()
const {
return uid; }
40 constexpr SensorVariation GetSensorVariation()
const {
return variation; }
41 constexpr std::uint32_t GetSensorTypeVersion()
const {
return version; }
42 std::string ToString()
const;
43 std::wstring ToWString()
const;
44 constexpr std::uint32_t ToInt()
const {
return integerRepresentation; }
47 void _DeserializeSerialNumber(
const std::uint8_t* serialNumberHex);
48 SensorType _ExtractSensorType(
const std::uint8_t* serialNumberHex)
const;
49 std::uint32_t _ExtractUID(
const std::uint8_t* serialNumberHex)
const;
50 std::uint32_t _ExtractVersion(
const std::uint8_t* serialNumberHex)
const;
51 SensorVariation _ExtractVariation(
const std::uint8_t* serialNumberHex)
const;
52 bool _ExtractOrientation(
const std::uint8_t* serialNumberHex)
const;
55 SensorType type{SensorType::XL_G6};
57 SensorVariation variation{SensorVariation::X30};
58 std::uint32_t version{0};
59 bool isVertical{
false};
60 std::uint32_t integerRepresentation{0};