HAN-FUN API  1.5.3
This project provides the common implementation of ULE Alliance's HAN-FUN application protocol.
HF::Core::GroupManagement::GroupAddress Struct Reference

This class represents a group address. More...

#include <group_management.h>

+ Inheritance diagram for HF::Core::GroupManagement::GroupAddress:
+ Collaboration diagram for HF::Core::GroupManagement::GroupAddress:

Public Member Functions

 GroupAddress (uint16_t address=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

uint16_t address
 Group Address
 

Static Public Attributes

static constexpr uint16_t NO_ADDR = 0x0000
 Empty Group Address. More...
 
static constexpr uint16_t START_ADDR = 0x0001
 First HAN-FUN Group Address. More...
 
static constexpr uint16_t END_ADDR = 0x7FFF
 Last HAN-FUN Group Address. More...
 
static constexpr uint16_t min_size = sizeof(uint16_t)
 Minimum pack/unpack required data size.
 

Detailed Description

This class represents a group address.

Definition at line 99 of file group_management.h.

Constructor & Destructor Documentation

◆ GroupAddress()

HF::Core::GroupManagement::GroupAddress::GroupAddress ( uint16_t  address = 0)
inline

Constructor.

Parameters
[in]addressthe group's address.

Definition at line 112 of file group_management.h.

References address.

113  {
114  this->address = address;
115  }

Member Function Documentation

◆ pack()

uint16_t HF::Core::GroupManagement::GroupAddress::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::Core::GroupManagement::GroupAddress::size ( ) const

Number bytes needed to serialize the message.

Returns
number of bytes the message requires to be serialized.

Referenced by HF::Core::GroupManagement::Group::reserve().

+ Here is the caller graph for this function:

◆ unpack()

uint16_t HF::Core::GroupManagement::GroupAddress::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

◆ END_ADDR

constexpr uint16_t HF::Core::GroupManagement::GroupAddress::END_ADDR = 0x7FFF
static

Last HAN-FUN Group Address.

Definition at line 105 of file group_management.h.

◆ NO_ADDR

constexpr uint16_t HF::Core::GroupManagement::GroupAddress::NO_ADDR = 0x0000
static

Empty Group Address.

Definition at line 103 of file group_management.h.

◆ START_ADDR

constexpr uint16_t HF::Core::GroupManagement::GroupAddress::START_ADDR = 0x0001
static

First HAN-FUN Group Address.

Definition at line 104 of file group_management.h.


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