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

This structure represents the parameters required for the BLICK_CMD effect. More...

#include <simple_visual_effects.h>

+ Collaboration diagram for HF::Interfaces::SimpleVisualEffects::BlinkEffect:

Public Member Functions

 BlinkEffect (uint16_t _duty_cycle_on=0, uint16_t _duty_cycle_off=0, uint16_t _number_of_cycles=1)
 Constructor. More...
 
uint16_t size () const
 Number bytes needed to serialize the message. More...
 
uint16_t pack (Common::ByteArray &array, uint16_t offset=0) const
 Write the object on to a ByteArray so it can be sent over the network. More...
 
uint16_t unpack (const Common::ByteArray &array, uint16_t offset=0)
 Read a message from a ByteArray. More...
 

Data Fields

uint16_t duty_cycle_on
 Number of miliseconds to keep visual indicator ON. More...
 
uint16_t duty_cycle_off
 Number of miliseconds to keep visual indicator OFF. More...
 
uint16_t number_of_cycles
 Number of times to repeat the ON-OFF cycle. More...
 

Static Public Attributes

static constexpr uint16_t min_size = 3 * sizeof(uint16_t)
 Minimum pack/unpack required data size.
 
static constexpr uint16_t min_number_of_cycles = 1
 Minimum value for number_of_cycles parameter.
 

Detailed Description

This structure represents the parameters required for the BLICK_CMD effect.

Definition at line 124 of file simple_visual_effects.h.

Constructor & Destructor Documentation

◆ BlinkEffect()

HF::Interfaces::SimpleVisualEffects::BlinkEffect::BlinkEffect ( uint16_t  _duty_cycle_on = 0,
uint16_t  _duty_cycle_off = 0,
uint16_t  _number_of_cycles = 1 
)
inline

Constructor.

Parameters
[in]_duty_cycle_onNumber of miliseconds to keep visual indicator ON.
[in]_duty_cycle_offNumber of miliseconds to keep visual indicator OFF
[in]_number_of_cyclesNumber of times to repeat the ON-OFF cycle.

Definition at line 137 of file simple_visual_effects.h.

138  : duty_cycle_on(_duty_cycle_on),
139  duty_cycle_off(_duty_cycle_off), number_of_cycles(_number_of_cycles) {}
uint16_t duty_cycle_off
Number of miliseconds to keep visual indicator OFF.
uint16_t duty_cycle_on
Number of miliseconds to keep visual indicator ON.
uint16_t number_of_cycles
Number of times to repeat the ON-OFF cycle.

Member Function Documentation

◆ pack()

uint16_t HF::Interfaces::SimpleVisualEffects::BlinkEffect::pack ( Common::ByteArray array,
uint16_t  offset = 0 
) const
inline

Write the object on to a ByteArray so it can be sent over the network.

The buffer passed in MUST have enough size to hold the serialized object, e.g.,

Serializable obj;
ByteArray payload(obj.size());
obj.pack(payload);
Parameters
[in,out]arrayByteArray reference to write the object to.
[in]offsetoffset to start writing to.
Returns
the number of bytes written.

Definition at line 154 of file simple_visual_effects.h.

References duty_cycle_off, duty_cycle_on, HF_ASSERT, HF_SERIALIZABLE_CHECK, min_number_of_cycles, min_size, number_of_cycles, and HF::Common::ByteArray::write().

155  {
156  HF_SERIALIZABLE_CHECK(array, offset, min_size);
157 
159  {
160  return 0;
161  });
162 
163  offset += array.write(offset, duty_cycle_on);
164  offset += array.write(offset, duty_cycle_off);
165  offset += array.write(offset, number_of_cycles);
166 
167  return min_size;
168  }
uint16_t duty_cycle_off
Number of miliseconds to keep visual indicator OFF.
static constexpr uint16_t min_number_of_cycles
Minimum value for number_of_cycles parameter.
#define HF_ASSERT(_expr, _block)
Helper macro to check for correct assumptions.
uint16_t duty_cycle_on
Number of miliseconds to keep visual indicator ON.
static constexpr uint16_t min_size
Minimum pack/unpack required data size.
#define HF_SERIALIZABLE_CHECK(__array, __offset, __size)
Helper macro to check if the given __array has enough size so __size bytes can be written/read from t...
uint16_t number_of_cycles
Number of times to repeat the ON-OFF cycle.
+ Here is the call graph for this function:

◆ size()

uint16_t HF::Interfaces::SimpleVisualEffects::BlinkEffect::size ( ) const
inline

Number bytes needed to serialize the message.

Returns
number of bytes the message requires to be serialized.

Definition at line 148 of file simple_visual_effects.h.

References min_size.

149  {
150  return min_size;
151  }
static constexpr uint16_t min_size
Minimum pack/unpack required data size.

◆ unpack()

uint16_t HF::Interfaces::SimpleVisualEffects::BlinkEffect::unpack ( const Common::ByteArray array,
uint16_t  offset = 0 
)
inline

Read a message from a ByteArray.

Parameters
[in]arrayByteArray reference to read the message from.
[in]offsetoffset to start reading from.
Returns
the number of bytes read.

Definition at line 171 of file simple_visual_effects.h.

References duty_cycle_off, duty_cycle_on, HF_ASSERT, HF_SERIALIZABLE_CHECK, min_number_of_cycles, min_size, number_of_cycles, and HF::Common::ByteArray::read().

172  {
173  HF_SERIALIZABLE_CHECK(array, offset, min_size);
174 
175  offset += array.read(offset, duty_cycle_on);
176  offset += array.read(offset, duty_cycle_off);
177  offset += array.read(offset, number_of_cycles);
178 
180  {
181  return 0;
182  })
183 
184  return min_size;
185  }
uint16_t duty_cycle_off
Number of miliseconds to keep visual indicator OFF.
static constexpr uint16_t min_number_of_cycles
Minimum value for number_of_cycles parameter.
#define HF_ASSERT(_expr, _block)
Helper macro to check for correct assumptions.
uint16_t duty_cycle_on
Number of miliseconds to keep visual indicator ON.
static constexpr uint16_t min_size
Minimum pack/unpack required data size.
#define HF_SERIALIZABLE_CHECK(__array, __offset, __size)
Helper macro to check if the given __array has enough size so __size bytes can be written/read from t...
uint16_t number_of_cycles
Number of times to repeat the ON-OFF cycle.
+ Here is the call graph for this function:

Field Documentation

◆ duty_cycle_off

uint16_t HF::Interfaces::SimpleVisualEffects::BlinkEffect::duty_cycle_off

Number of miliseconds to keep visual indicator OFF.

Definition at line 127 of file simple_visual_effects.h.

Referenced by pack(), and unpack().

◆ duty_cycle_on

uint16_t HF::Interfaces::SimpleVisualEffects::BlinkEffect::duty_cycle_on

Number of miliseconds to keep visual indicator ON.

Definition at line 126 of file simple_visual_effects.h.

Referenced by pack(), and unpack().

◆ number_of_cycles

uint16_t HF::Interfaces::SimpleVisualEffects::BlinkEffect::number_of_cycles

Number of times to repeat the ON-OFF cycle.

Definition at line 128 of file simple_visual_effects.h.

Referenced by pack(), and unpack().


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