HAN-FUN API  1.5.3
This project provides the common implementation of ULE Alliance's HAN-FUN application protocol.
HF::Protocol::Message::Interface Struct Reference

Interface Address. More...

#include <protocol.h>

+ Inheritance diagram for HF::Protocol::Message::Interface:
+ Collaboration diagram for HF::Protocol::Message::Interface:

Public Member Functions

 Interface (uint16_t uid=0, uint8_t role=0, uint8_t member=0)
 Constructor. More...
 
uint16_t size () const
 Number bytes needed to serialize the message. More...
 
uint16_t pack (Common::ByteArray &array, uint16_t offset=0) const
 Write the object on to a ByteArray so it can be sent over the network. More...
 
uint16_t unpack (const Common::ByteArray &array, uint16_t offset=0)
 Read a message from a ByteArray. More...
 
- Public Member Functions inherited from HF::Common::Interface
 Interface (uint16_t id=0, uint8_t role=0)
 Constructor. More...
 
uint16_t size () const
 Number bytes needed to serialize the message. More...
 
uint16_t pack (Common::ByteArray &array, uint16_t offset=0) const
 Write the object on to a ByteArray so it can be sent over the network. More...
 
uint16_t unpack (const Common::ByteArray &array, uint16_t offset=0)
 Read a message from a ByteArray. More...
 

Data Fields

uint8_t member
 Interface destination member. More...
 
- Data Fields inherited from HF::Common::Interface
uint16_t role: 1
 Interface role : Server or Client. More...
 
uint16_t id: 15
 Identifier of the interface. More...
 

Static Public Attributes

static const uint16_t min_size
 Minimum pack/unpack required data size.
 
- Static Public Attributes inherited from HF::Common::Interface
static constexpr uint16_t min_size = sizeof(uint16_t)
 Minimum pack/unpack required data size.
 

Detailed Description

Interface Address.

Definition at line 93 of file protocol.h.

Constructor & Destructor Documentation

◆ Interface()

HF::Protocol::Message::Interface::Interface ( uint16_t  uid = 0,
uint8_t  role = 0,
uint8_t  member = 0 
)
inline

Constructor.

Parameters
[in]uidinterface UID.
[in]roleinterface role.
[in]memberinterface member.

Definition at line 108 of file protocol.h.

108  :
109  Common::Interface(uid, role), member(member)
110  {}
uint16_t role
Interface role : Server or Client.
uint8_t member
Interface destination member.
Definition: protocol.h:99

Member Function Documentation

◆ pack()

uint16_t HF::Protocol::Message::Interface::pack ( Common::ByteArray array,
uint16_t  offset = 0 
) const

Write the object on to a ByteArray so it can be sent over the network.

The buffer passed in MUST have enough size to hold the serialized object, e.g.,

Serializable obj;
ByteArray payload(obj.size());
obj.pack(payload);
Parameters
[in,out]arrayByteArray reference to write the object to.
[in]offsetoffset to start writing to.
Returns
the number of bytes written.

◆ size()

uint16_t HF::Protocol::Message::Interface::size ( ) const

Number bytes needed to serialize the message.

Returns
number of bytes the message requires to be serialized.

◆ unpack()

uint16_t HF::Protocol::Message::Interface::unpack ( const Common::ByteArray array,
uint16_t  offset = 0 
)

Read a message from a ByteArray.

Parameters
[in]arrayByteArray reference to read the message from.
[in]offsetoffset to start reading from.
Returns
the number of bytes read.

Field Documentation

◆ member


The documentation for this struct was generated from the following file: