46 LOG(INFO) <<
">>> Registration response <<<" <<
NL;
57 DeviceManagementClient,
62 #if HF_BATCH_PROGRAM_SUPPORT 65 #if HF_EVENT_SCHEDULING_SUPPORT 68 #if HF_WEEKLY_SCHEDULING_SUPPORT 72 , HF::Core::GroupTable::DefaultServer
100 LOG(INFO) <<
"Device " << device->uid <<
" registered !" <<
NL;
108 DeviceManagementServer,
113 #if HF_BATCH_PROGRAM_SUPPORT 116 #if HF_EVENT_SCHEDULING_SUPPORT 119 #if HF_WEEKLY_SCHEDULING_SUPPORT 123 HF::Core::GroupTable::DefaultServer,
142 int main(
int argc,
char **argv)
147 LOG(INFO) <<
"Use case : Handling registration events" <<
NL;
154 LOG(INFO) <<
"Create the node instances ..." <<
NL;
162 LOG(INFO) <<
"Create the base instance ..." <<
NL;
165 LOG(INFO) <<
"Create transport instance" <<
NL;
174 LOG(INFO) <<
"Network setup ..." <<
NL;
176 loop.set_base(&base);
177 loop.add_node(&node1,
"node_1");
178 loop.add_node(&node2,
"node_2");
185 LOG(INFO) <<
"Registering node1 ... " <<
NL;
186 node1.unit0()->device_management()->register_device();
187 LOG(INFO) <<
"Node1 address ... " << node1.address() <<
NL;
190 assert(node1.address() == 1);
195 LOG(INFO) <<
"Registering node2 ... " <<
NL;
196 node2.unit0()->device_management()->register_device();
197 LOG(INFO) <<
"Node2 address ... " << node2.address() <<
NL;
200 assert(node2.address() == 2);
202 LOG(INFO) <<
"There should be two registered devices ... " 203 << base.
unit0()->device_management()->entries().size() <<
NL;
205 assert(base.
unit0()->device_management()->entries().size() == 2);
This class represents a HAN-FUN Concentrator.
bool response(Message::Type type)
Check if message is a response.
Server DefaultServer
Helper typedef.
This represent the special unit with ID/UID = 0.
This is the top level include file for the HAN-FUN library.
This file contains the prototypes of the debug functionality in HAN-FUN.
Server< Entries< Day > > DefaultServer
Weekly Scheduling Service : Server side with default persistence implementation.
Server< Entries< Interval > > DefaultServer
Event Scheduling Service : Server side with default persistence implementation.
virtual void registered(DevicePtr &device)
Indicate that a device has been registered.
constexpr uint16_t BROADCAST_ADDR
HAN-FUN Broadcast - device address.
Device Management interface : Client side.
Attribute Reporting - Server Role.
Template to create Unit 0 for HAN-FUN node devices.
Helper class used to implement custom functionality to the device management server side...
virtual void registered(RegisterResponse &response)
This method is called when a response to a registration message is received.
Helper class used to implement custom functionality to the bind management server side...
Template for HAN-FUN concentrator devices.
#define NL
Helper define for new-line and stream clear.
CoreServices * unit0() const
Get the unit 0 used by this concentrator device.
Template to create Unit0 for HAN-FUN concentrator devices.
Time Service : Server side implementation.
This file contains an implementation of a HAN-FUN transport layer to be used in the example applicati...
Simple raw pointer wrapper.
#define UNUSED(x)
Helper macro to remove warning about unused function/method argument.
Helper class used to implement custom functionality to the group management server side...
#define LOG(X)
Log messages with the level given by X.
Template for declaring HAN-FUN node devices.
Scheduling Service : Server side implementation.
Register command response.
Top-level namespace for the HAN-FUN library.