![]() |
HAN-FUN API
1.5.3
This project provides the common implementation of ULE Alliance's HAN-FUN application protocol.
|
Template for declaring HAN-FUN node devices. More...
#include <devices.h>
Public Member Functions | |
void | connected (HF::Transport::Link *link) _override |
Callback to report that a new transport link was been created to a remote device. More... | |
void | disconnected (HF::Transport::Link *link) _override |
Callback to the report that the given transport link no longer is valid and MUST not be used to send messages to the corresponding end-point. More... | |
void | receive (Protocol::Packet &packet, Common::ByteArray &payload, uint16_t offset) _override |
Callback to deliver a packet received from the transport layer. More... | |
uint16_t | address () const _override |
Return the device address on the HAN-FUN network, when the device is registered, or HF_BROADCAST_ADDR otherwise. More... | |
CoreServices * | unit0 () const _override |
Return pointer to the unit 0 for this device. More... | |
![]() | |
const IUnits & | units () const |
Return the list of units registered in this device. More... | |
void | add (Units::IUnit *unit) |
Add unit to devices unit lists. More... | |
void | remove (Units::IUnit *unit) |
Remove unit from device's unit list. More... | |
Units::IUnit * | unit (uint8_t id) const |
Return pointer to the unit with the given id. More... | |
void | send (Protocol::Packet &packet) |
Send given packet into the HAN-FUN network. More... | |
void | periodic (uint32_t time) |
Handle periodic processing. More... | |
Events |
Protected Member Functions | |
HF::Transport::Link * | link (uint16_t addr) const _override |
Return the link that can be used to send a packet to the device with the given address. More... | |
bool | to_local (const Protocol::Packet &packet) const _override |
Check if an incoming packet is for the node. More... | |
![]() | |
bool | from_local (const Protocol::Packet &packet) const |
Check if the given packet is from the local device. More... | |
bool | from_remote (const Protocol::Packet &packet) |
Check if the given packet is from the a remote device. More... | |
bool | is_registered () |
Check if the device has a valid, i.e. More... | |
Protected Attributes | |
HF::Transport::Link * | _link |
Link to the be used when sending packets to the network. | |
CoreServices | _unit0 |
Unit 0 implementation this device will use. | |
![]() | |
uint8_t | next_reference |
Last reference number used to send a packet. | |
IUnits | _units |
List containing pointers to the units present in the device. | |
Protocol::Filters::ResponseRequired | response_filter |
Support for generating missing responses for messages. | |
Template for declaring HAN-FUN node devices.
|
inlinevirtual |
Return the device address on the HAN-FUN network, when the device is registered, or HF_BROADCAST_ADDR
otherwise.
HF_BROADCAST_ADDR
otherwise. Implements HF::IDevice.
Definition at line 456 of file devices.h.
|
inlinevirtual |
Callback to report that a new transport link
was been created to a remote device.
This link can then be used by the local end-point to send messages to the remote end-point.
[in] | link | pointer to the created link. |
Implements HF::Transport::Endpoint.
Definition at line 433 of file devices.h.
|
inlinevirtual |
Callback to the report that the given transport link
no longer is valid and MUST not be used to send messages to the corresponding end-point.
At the time of this method call the link MUST not be used to send any further messages to the remote end-point.
[in] | link | pointer to the link disconnected. |
Implements HF::Transport::Endpoint.
Definition at line 438 of file devices.h.
|
inlineprotectedvirtual |
Return the link that can be used to send a packet to the device with the given address.
[in] | addr | the address of the device to send the packet to. |
nullptr
otherwise; Implements HF::Devices::AbstractDevice.
Definition at line 479 of file devices.h.
|
inlinevirtual |
Callback to deliver a packet received from the transport layer.
[in] | packet | reference to the received packet. |
[in] | payload | reference a ByteArray containing the received data. |
[in] | offset | offset from where the received data starts on the payload byte array buffer. |
Reimplemented from HF::Devices::AbstractDevice.
Reimplemented in Node.
Definition at line 446 of file devices.h.
|
inlineprotectedvirtual |
Check if an incoming packet is for the node.
[in] | packet | reference to the incoming packet. |
true | if the packet if for the node; |
false | otherwise. |
Reimplemented from HF::Devices::AbstractDevice.
Definition at line 493 of file devices.h.
|
inlinevirtual |
Return pointer to the unit 0 for this device.
Implements HF::IDevice.
Definition at line 461 of file devices.h.