HAN-FUN API  1.5.3
This project provides the common implementation of ULE Alliance's HAN-FUN application protocol.
HF::Interfaces::OnOff::Client Struct Reference

On-Off Interface : Client side implementation. More...

#include <on_off.h>

+ Inheritance diagram for HF::Interfaces::OnOff::Client:
+ Collaboration diagram for HF::Interfaces::OnOff::Client:

Public Member Functions

Commands
void on (Protocol::Address &addr)
 Send a OnOff::ON_CMD message to the device at the given address. More...
 
void on ()
 Send a OnOff::ON_CMD message to the broadcast address.
 
void off (Protocol::Address &addr)
 Send a OnOff::OFF_CMD message to the device at the given address. More...
 
void off ()
 Send a OnOff::OFF_CMD message to the broadcast address.
 
void toggle (Protocol::Address &addr)
 Send a OnOff::TOGGLE_CMD message to the device at the given address. More...
 
void toggle ()
 Send a OnOff::TOGGLE_CMD message to the broadcast address.
 
- Public Member Functions inherited from HF::Interfaces::InterfaceRole< OnOff::Base, HF::Interface::CLIENT_ROLE >
HF::Interface::Role role () const
 Return the Interface::Role this interface implements. More...
 
- Public Member Functions inherited from HF::Interfaces::Interface< HF::Interface::ON_OFF >
uint16_t uid () const
 This method returns the interface UID. More...
 
- Public Member Functions inherited from HF::Interfaces::AbstractInterface
Common::Result handle (Protocol::Packet &packet, Common::ByteArray &payload, uint16_t offset)
 Handle incoming messages from the network. More...
 
void periodic (uint32_t time)
 Handle periodic processing. More...
 
HF::Attributes::IAttributeattribute (uint8_t uid)
 Return a pointer to the interface attribute with the given uid. More...
 
virtual HF::Attributes::UIDS attributes (uint8_t pack_id=HF::Attributes::Pack::MANDATORY) const
 Return a vector containing the attribute UIDs, for the given pack ID. More...
 

Additional Inherited Members

- Public Types inherited from HF::Interface
enum  Role { CLIENT_ROLE = 0, SERVER_ROLE = 1 }
 Interface roles. More...
 
enum  UID {
  DEVICE_MANAGEMENT = 0x0001, BIND_MANAGEMENT = 0x0002, GROUP_MANAGEMENT = 0x0003, IDENTIFY = 0x0004,
  DEVICE_INFORMATION = 0x0005, ATTRIBUTE_REPORTING = 0x0006, BATCH_PROGRAM_MANAGEMENT = 0x0007, EVENT_SCHEDULING = 0x0008,
  WEEKLY_SCHEDULING = 0x0009, GROUP_TABLE = 0x000A, TAMPER_ALERT = 0x0101, TIME = 0x0102,
  POWER = 0x0110, KEEP_ALIVE = 0x0115, RSSI = 0x0111, SUOTA = 0x0400,
  ALERT = 0x0100, ON_OFF = 0x0200, LEVEL_CONTROL = 0x0201, COLOUR_CONTROL = 0x0202,
  SIMPLE_KEYPAD = 0x0203, SIMPLE_POWER_METER = 0x0300, SIMPLE_TEMPERATURE = 0x0301, SIMPLE_HUMIDITY = 0x0302,
  SIMPLE_THERMOSTAT = 0x0303, SIMPLE_BUTTON = 0x0304, SIMPLE_VISUAL_EFFECTS = 0x0305, SIMPLE_AIR_PRESSURE = 0x0306,
  SIMPLE_LIGHT_SENSOR = 0x0307, RESERVED = 0x7F00, MAX_UID = 0x7FFE, ANY_UID = 0x7FFF
}
 Interfaces Unique Identifiers (UID). More...
 
- Static Public Attributes inherited from HF::Interface
static constexpr uint8_t MAX_CMD_ID = 0xFF
 Maximum value for command IDs in interfaces.
 
- Protected Member Functions inherited from HF::Interfaces::Interface< HF::Interface::ON_OFF >
bool check_uid (uint16_t uid) const
 
- Protected Member Functions inherited from HF::Interfaces::AbstractInterface
virtual void send (const Protocol::Address &addr, Protocol::Message &message)=0
 Send message msg to the network address given by addr. More...
 
virtual void notify (const HF::Attributes::IAttribute &old_value, const HF::Attributes::IAttribute &new_value) const
 Notify that an attribute value as changed. More...
 
Common::Result check (Protocol::Message &message, Common::ByteArray &payload, uint16_t offset)
 Check if message has correct attributes to be processed by the interface. More...
 
Common::Result check_payload_size (Protocol::Message &message, Common::ByteArray &payload, uint16_t offset)
 Check if payload data size if sufficient for processing the message. More...
 
virtual uint16_t payload_size (Protocol::Message &message) const
 Return the minimal payload size that should be present for the given message. More...
 
virtual uint16_t payload_size (Protocol::Message::Interface &itf) const
 Return the minimal payload size that a message should hold when addressed at the given interface. More...
 
template<typename _Message >
uint16_t payload_size_helper () const
 Helper function template to retrieve minimum size required for serializing/deserializing the class given. More...
 
virtual Common::Result handle_command (Protocol::Packet &packet, Common::ByteArray &payload, uint16_t offset)
 Handle incoming messages from the network. More...
 
virtual Common::Result handle_attribute (Protocol::Packet &packet, Common::ByteArray &payload, uint16_t offset)
 Handle incoming messages from the network. More...
 

Detailed Description

On-Off Interface : Client side implementation.

This class provides the client side of the On-Off interface.

Definition at line 218 of file on_off.h.

Member Function Documentation

◆ off()

void HF::Interfaces::OnOff::Client::off ( Protocol::Address addr)

Send a OnOff::OFF_CMD message to the device at the given address.

Parameters
addrthe address of the device to send the message to.

◆ on()

void HF::Interfaces::OnOff::Client::on ( Protocol::Address addr)

Send a OnOff::ON_CMD message to the device at the given address.

Parameters
addrthe address of the device to send the message to.

◆ toggle()

void HF::Interfaces::OnOff::Client::toggle ( Protocol::Address addr)

Send a OnOff::TOGGLE_CMD message to the device at the given address.

Parameters
addrthe address of the device to send the message to.

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