33 bool isValid(std::vector<std::string>& errorMessages);
38 stream <<
"Name: " << rhs.name;
42 stream <<
", VendorID: 0x" << std::hex << rhs.vendorID << std::dec <<
" ("
43 << rhs.vendorID <<
")";
47 stream <<
", ProductCode: 0x" << std::hex << rhs.productCode << std::dec <<
" ("
48 << rhs.productCode <<
")";
52 stream <<
", SerialNumber: 0x" << std::hex << rhs.serialNumber << std::dec <<
" ("
53 << rhs.serialNumber <<
")";
61 return vendorID == other.vendorID && productCode == other.productCode &&
62 serialNumber == other.serialNumber;
66 std::uint32_t vendorID;
67 std::uint32_t productCode;
68 std::uint32_t serialNumber;
69 std::string name =
"unknown";
76 void setVendorID(std::uint32_t vendorID,
ConfigTag tag);
77 void setProductCode(std::uint32_t productCode,
ConfigTag tag);
78 void setSerialNumber(std::uint32_t serial,
ConfigTag tag);
79 void setName(std::string name,
ConfigTag tag);
88 " is defined multiple times in " +
tagName(tag) +
" nodes");
90 else if (tagField > tag)
The ConfigInsertError class represents an error that is thrown if an attempt is mode to set a config ...
std::uint32_t getProductCode()
std::uint32_t getSerialNumber()
bool operator==(const SlaveIdentifierConfig &other) const
SlaveIdentifierConfig()=default
friend class ConfigParser
std::uint32_t getVendorID()
bool isValid(std::vector< std::string > &errorMessages)
Check if the SlaveIdentifierConfig is complete and valid.
friend std::ostream & operator<<(std::ostream &stream, const SlaveIdentifierConfig &rhs)
ConfigTag
The ConfigTag is used when setting a config value.
std::string tagName(ConfigTag tag)