40 uint16_t addr_value = (data[offset] << 8) | data[offset + 1];
42 return MIN_SOURCE_ADDRESS <= addr_value && MAX_SOURCE_ADDRESS >= addr_value;
58 address =
static_cast<uint16_t
>(data[offset] << 8 | data[offset + 1]);
73 return static_cast<uint16_t
>(data[offset] << 8 | data[offset + 1]);
Defines the ByteArray type and utility functions for byte manipulation.
uint16_t DoIPAddress
Represents a 16-bit DoIP address consisting of high and low significant bytes.
bool isValidSourceAddress(const uint8_t *data, size_t offset=0)
Check if source address is valid.
constexpr DoIPAddress ZERO_ADDRESS
constexpr DoIPAddress MAX_SOURCE_ADDRESS
DoIPAddress readAddressFrom(const uint8_t *data, size_t offset=0)
Reads the DoIP address from a byte array.
bool tryReadAddressFrom(const uint8_t *data, size_t offset, DoIPAddress &address)
Try read the DoIP address from a byte array.
constexpr size_t DOIP_ADDRESS_SIZE
constexpr DoIPAddress MIN_SOURCE_ADDRESS