8 #ifndef DIAGNOSTIC_CLIENT_LIB_APPL_INCLUDE_DIAGNOSTIC_CLIENT_UDS_MESSAGE_TYPE_H
9 #define DIAGNOSTIC_CLIENT_LIB_APPL_INCLUDE_DIAGNOSTIC_CLIENT_UDS_MESSAGE_TYPE_H
14 #include <string_view>
19 namespace uds_message {
Class represents an UDS message exchanged between User of diag-client-lib and implementation of diag-...
UdsMessage(const UdsMessage &other)=default
Copy constructs an instance of UdsMessage.
UdsMessage & operator=(UdsMessage &&other) noexcept=default
Move assignment of UdsMessage.
std::vector< std::uint8_t > ByteVector
Type alias of byte vector type.
UdsMessage(UdsMessage &&other) noexcept=default
Move constructs an instance of UdsMessage.
UdsMessage & operator=(const UdsMessage &other)=default
Copy assignment of UdsMessage.
UdsMessage()=default
Default constructs an instance of UdsMessage.
virtual const ByteVector & GetPayload() const =0
Get the UDS message data starting with the SID (A_Data as per ISO)
std::string_view IpAddress
Type alias of ip address type.
virtual ByteVector & GetPayload()=0
Return the underlying buffer for write access.
virtual IpAddress GetHostIpAddress() const noexcept=0
Get the remote ip address present.
virtual ~UdsMessage()=default
Destructs an instance of UdsMessage.
std::unique_ptr< UdsMessage > UdsRequestMessagePtr
Type alias of unique_ptr for Request Message.
std::unique_ptr< UdsMessage > UdsResponseMessagePtr
Type alias of unique_ptr for Response Message.
std::unique_ptr< const UdsMessage > UdsRequestMessageConstPtr
Type alias of unique_ptr for constant UdsRequestMessage.