HAN-FUN API  1.5.3
This project provides the common implementation of ULE Alliance's HAN-FUN application protocol.
HF::Interfaces::SimpleLightSensor::Server Class Reference

Simple Light Sensor Interface : Server side implementation. More...

#include <simple_light_sensor.h>

+ Inheritance diagram for HF::Interfaces::SimpleLightSensor::Server:
+ Collaboration diagram for HF::Interfaces::SimpleLightSensor::Server:

Public Member Functions

 Server (uint32_t minimum=std::numeric_limits< uint32_t >::min(), uint32_t maximum=std::numeric_limits< uint32_t >::max(), uint32_t tolerance=0)
 Constructor. More...
 
virtual ~Server ()
 Destructor.
 
uint32_t value () const
 Get the Value for the Simple Light Sensor server. More...
 
void value (uint32_t __value)
 Set the Value for the Simple Light Sensor server. More...
 
uint32_t minimum () const
 Get the Minimum for the Simple Light Sensor server. More...
 
void minimum (uint32_t __value)
 Set the Minimum for the Simple Light Sensor server. More...
 
uint32_t maximum () const
 Get the Maximum for the Simple Light Sensor server. More...
 
void maximum (uint32_t __value)
 Set the Maximum for the Simple Light Sensor server. More...
 
uint32_t tolerance () const
 Get the Tolerance for the Simple Light Sensor server. More...
 
void tolerance (uint32_t __value)
 Set the Tolerance for the Simple Light Sensor server. More...
 
HF::Attributes::IAttributeattribute (uint8_t uid)
 Return a pointer to the interface attribute with the given uid. More...
 
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...
 
- Public Member Functions inherited from HF::Interfaces::InterfaceRole< SimpleLightSensor::Base, HF::Interface::SERVER_ROLE >
HF::Interface::Role role () const
 Return the Interface::Role this interface implements. More...
 
- Public Member Functions inherited from HF::Interfaces::Interface< HF::Interface::SIMPLE_LIGHT_SENSOR >
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...
 

Protected Attributes

uint32_t _value
 Value.
 
uint32_t _minimum
 Minimum.
 
uint32_t _maximum
 Maximum.
 
uint32_t _tolerance
 Tolerance.
 

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::SimpleLightSensor::Base
 Base ()
 Constructor.
 
- Protected Member Functions inherited from HF::Interfaces::Interface< HF::Interface::SIMPLE_LIGHT_SENSOR >
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

Simple Light Sensor Interface : Server side implementation.

This class provides the server side of the Simple Light Sensor interface.

Definition at line 158 of file simple_light_sensor.h.

Constructor & Destructor Documentation

◆ Server()

HF::Interfaces::SimpleLightSensor::Server::Server ( uint32_t  minimum = std::numeric_limits<uint32_t>::min(),
uint32_t  maximum = std::numeric_limits<uint32_t>::max(),
uint32_t  tolerance = 0 
)
inline

Constructor.

Parameters
[in]minimumMinimum measurable lux.
[in]maximumMaximum measurable lux.
[in]toleranceTolerance.

Definition at line 176 of file simple_light_sensor.h.

178  :
180  {}
uint32_t maximum() const
Get the Maximum for the Simple Light Sensor server.
uint32_t tolerance() const
Get the Tolerance for the Simple Light Sensor server.
uint32_t minimum() const
Get the Minimum for the Simple Light Sensor server.

Member Function Documentation

◆ attribute()

HF::Attributes::IAttribute* HF::Interfaces::SimpleLightSensor::Server::attribute ( uint8_t  uid)
virtual

Return a pointer to the interface attribute with the given uid.

Parameters
[in]uididentifier of the attribute in the interface.
Returns
a pointer to the attribute if it exists, nullptr otherwise.

Reimplemented from HF::Interfaces::AbstractInterface.

◆ attributes()

HF::Attributes::UIDS HF::Interfaces::SimpleLightSensor::Server::attributes ( uint8_t  pack_id = HF::Attributes::Pack::MANDATORY) const
virtual

Return a vector containing the attribute UIDs, for the given pack ID.

Parameters
[in]pack_idthe Attribute pack ID to get the attributes UIDs for.
Returns
vector containing the attributes UIDs.

Reimplemented from HF::Interfaces::AbstractInterface.

◆ maximum() [1/2]

uint32_t HF::Interfaces::SimpleLightSensor::Server::maximum ( ) const

Get the Maximum for the Simple Light Sensor server.

Returns
the current Maximum.

◆ maximum() [2/2]

void HF::Interfaces::SimpleLightSensor::Server::maximum ( uint32_t  __value)

Set the Maximum for the Simple Light Sensor server.

Parameters
[in]__valuethe Maximum value to set the server to.

◆ minimum() [1/2]

uint32_t HF::Interfaces::SimpleLightSensor::Server::minimum ( ) const

Get the Minimum for the Simple Light Sensor server.

Returns
the current Minimum.

◆ minimum() [2/2]

void HF::Interfaces::SimpleLightSensor::Server::minimum ( uint32_t  __value)

Set the Minimum for the Simple Light Sensor server.

Parameters
[in]__valuethe Minimum value to set the server to.

◆ tolerance() [1/2]

uint32_t HF::Interfaces::SimpleLightSensor::Server::tolerance ( ) const

Get the Tolerance for the Simple Light Sensor server.

Returns
the current Tolerance.

◆ tolerance() [2/2]

void HF::Interfaces::SimpleLightSensor::Server::tolerance ( uint32_t  __value)

Set the Tolerance for the Simple Light Sensor server.

Parameters
[in]__valuethe Tolerance value to set the server to.

◆ value() [1/2]

uint32_t HF::Interfaces::SimpleLightSensor::Server::value ( ) const

Get the Value for the Simple Light Sensor server.

Returns
the current Value.

◆ value() [2/2]

void HF::Interfaces::SimpleLightSensor::Server::value ( uint32_t  __value)

Set the Value for the Simple Light Sensor server.

Parameters
[in]__valuethe Value value to set the server to.

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