![]() |
HAN-FUN API
1.5.3
This project provides the common implementation of ULE Alliance's HAN-FUN application protocol.
|
This module contains the classes that define and implement the Group Management service API. More...
Data Structures | |
struct | HF::Core::GroupManagement::GroupAddress |
This class represents a group address. More... | |
struct | HF::Core::GroupManagement::Group |
This class represents a group of devices. More... | |
struct | HF::Core::GroupManagement::CreateMessage |
Message payload for a HF::GroupManagement::CREATE_CMD request. More... | |
struct | HF::Core::GroupManagement::CreateResponse |
Message payload for a HF::GroupManagement::CREATE_CMD response. More... | |
struct | HF::Core::GroupManagement::Message |
Parent class for the message payload for a HF::GroupManagement::ADD_CMD and HF::GroupManagement::REMOVE_CMD requests. More... | |
struct | HF::Core::GroupManagement::InfoResponse |
Message payload for a HF::GroupManagement::GET_INFO_CMD response. More... | |
struct | HF::Core::GroupManagement::NumberOfGroups |
Helper class to handle the Number Of Groups attribute for the Group Management service. More... | |
struct | HF::Core::GroupManagement::IEntries |
Device Management - Persistent Storage API. More... | |
struct | HF::Core::GroupManagement::Entries |
Default implementation of the persistence API. More... | |
struct | HF::Core::GroupManagement::Base |
Group Management Service : Parent. More... | |
class | HF::Core::GroupManagement::IServer |
Group Management Service : Server side implementation. More... | |
struct | HF::Core::GroupManagement::IGroupTable |
Interface to the HF::GroupTable API used to update the device's group tables entries on add/remove events. More... | |
struct | HF::Core::GroupManagement::GroupTableClient |
Default implementation of the IGroupTable interface. More... | |
class | HF::Core::GroupManagement::Server< _Entries, _GroupTable > |
Helper class used to implement custom functionality to the group management server side. More... | |
struct | HF::Core::GroupManagement::Client |
Group Management Service : Client side implementation. More... | |
Typedefs | |
typedef Protocol::Address | HF::Core::GroupManagement::Member |
This class represents a member of a group. | |
typedef GroupAddress | HF::Core::GroupManagement::DeleteMessage |
Message payload for a HF::GroupManagement::DELETE_CMD request. | |
typedef Protocol::Response | HF::Core::GroupManagement::DeleteResponse |
Message payload for a HF::GroupManagement::DELETE_CMD response. | |
typedef Message | HF::Core::GroupManagement::AddMessage |
Message payload for a HF::GroupManagement::ADD_CMD request. | |
typedef Protocol::Response | HF::Core::GroupManagement::AddResponse |
Message payload for a HF::GroupManagement::ADD_CMD response. | |
typedef Message | HF::Core::GroupManagement::RemoveMessage |
Message payload for a HF::GroupManagement::REMOVE_CMD request. | |
typedef Protocol::Response | HF::Core::GroupManagement::RemoveResponse |
Message payload for a HF::GroupManagement::REMOVE_CMD response. | |
typedef GroupAddress | HF::Core::GroupManagement::InfoMessage |
Message payload for a HF::GroupManagement::GET_INFO_CMD request. | |
Enumerations | |
enum | HF::Core::GroupManagement::CMD { HF::Core::GroupManagement::CREATE_CMD = 0x01, HF::Core::GroupManagement::DELETE_CMD = 0x02, HF::Core::GroupManagement::ADD_CMD = 0x03, HF::Core::GroupManagement::REMOVE_CMD = 0x04, HF::Core::GroupManagement::GET_INFO_CMD = 0x05 } |
Command IDs. More... | |
enum | HF::Core::GroupManagement::Attributes { HF::Core::GroupManagement::NUMBER_OF_GROUPS_ATTR = 0x01 } |
Attributes. More... | |
Functions | |
HF::Attributes::IAttribute * | HF::Core::create_attribute (GroupManagement::IServer *server, uint8_t uid) |
Create an attribute object that can hold the attribute with the given uid . More... | |
HF::Attributes::IAttribute * | HF::Core::GroupManagement::create_attribute (uint8_t uid) |
Create an attribute object that can hold the attribute with the given uid . More... | |
std::ostream & | operator<< (std::ostream &stream, const HF::Core::GroupManagement::CMD command) |
Convert the given command into a string and write it to the given stream . More... | |
std::ostream & | operator<< (std::ostream &stream, const HF::Core::GroupManagement::Attributes attribute) |
Convert the given attribute into a string and write it to the given stream . More... | |
This module contains the classes that define and implement the Group Management service API.
Enumerator | |
---|---|
NUMBER_OF_GROUPS_ATTR | Number Of Groups attribute UID. |
Definition at line 90 of file group_management.h.
Command IDs.
Enumerator | |
---|---|
CREATE_CMD | Create command UID. |
DELETE_CMD | Delete command UID. |
ADD_CMD | Add command UID. |
REMOVE_CMD | Remove command UID. |
GET_INFO_CMD | Get Info command UID. |
Definition at line 79 of file group_management.h.
HF::Attributes::IAttribute* HF::Core::create_attribute | ( | GroupManagement::IServer * | server, |
uint8_t | uid | ||
) |
Create an attribute object that can hold the attribute with the given uid
.
If server
is not equal to nullptr
then initialize it with the current value.
[in] | server | pointer to the object to read the current value from. |
[in] | uid | attribute's UID to create the attribute object for. |
nullptr
if the attribute UID does not exist.
|
inline |
Create an attribute object that can hold the attribute with the given uid
.
[in] | uid | attribute UID to create the attribute object for. |
pointer | to an attribute object. |
nullptr | if the attribute UID does not exist. |
Create an attribute object that can hold the attribute with the given uid
.
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::Scheduling::Event::IServer *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::DeviceManagement::Server *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::DeviceInformation::Server *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::BindManagement::Server *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::BatchProgramManagement::IServer *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::AttributeReporting::Server *,uint8_t)
[in] | uid | attribute UID to create the attribute object for. |
nullptr
if the attribute UID does not exist.Create an attribute object that can hold the attribute with the given uid
.
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::Scheduling::Event::IServer *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::DeviceManagement::Server *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::DeviceInformation::Server *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::BindManagement::Server *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::BatchProgramManagement::IServer *,uint8_t)
Create an attribute object that can hold the attribute with the given uid
. (HF::Core::AttributeReporting::Server *,uint8_t)
[in] | uid | attribute UID to create the attribute object for. |
pointer | to an attribute object |
<tt>nullptr</tt> | if the attribute UID does not exist. |
Definition at line 108 of file simple_humidity.h.
std::ostream& operator<< | ( | std::ostream & | stream, |
const HF::Core::GroupManagement::CMD | command | ||
) |
Convert the given command
into a string and write it to the given stream
.
[in] | stream | out stream to write the string to. |
[in] | command | role value to convert to a string. |
stream
std::ostream& operator<< | ( | std::ostream & | stream, |
const HF::Core::GroupManagement::Attributes | attribute | ||
) |
Convert the given attribute
into a string and write it to the given stream
.
[in] | stream | out stream to write the string to. |
[in] | attribute | attribute value to convert to a string. |
stream