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

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

#include <simple_visual_effects.h>

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

Public Member Functions

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

uint8_t start
 Start brightness in percentage. More...
 
uint8_t end
 End brightness in percentage. More...
 
uint16_t duration
 Time in miliseconds to go from start to end brightness. More...
 

Static Public Attributes

static constexpr uint16_t min_size = 2 * sizeof(uint8_t) + sizeof(uint16_t)
 Minimum pack/unpack required data size.
 

Detailed Description

This structure represents the parameters required for the FADE_CMD effect.

Definition at line 191 of file simple_visual_effects.h.

Member Function Documentation

◆ pack()

uint16_t HF::Interfaces::SimpleVisualEffects::FadeEffect::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 210 of file simple_visual_effects.h.

References duration, end, HF_SERIALIZABLE_CHECK, min_size, start, and HF::Common::ByteArray::write().

211  {
212  HF_SERIALIZABLE_CHECK(array, offset, min_size);
213 
214  offset += array.write(offset, start);
215  offset += array.write(offset, end);
216  offset += array.write(offset, duration);
217 
218  return min_size;
219  }
static constexpr uint16_t min_size
Minimum pack/unpack required data size.
uint8_t start
Start brightness in percentage.
#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...
uint8_t end
End brightness in percentage.
uint16_t duration
Time in miliseconds to go from start to end brightness.
+ Here is the call graph for this function:

◆ size()

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

Number bytes needed to serialize the message.

Returns
number of bytes the message requires to be serialized.

Definition at line 204 of file simple_visual_effects.h.

References min_size.

205  {
206  return min_size;
207  }
static constexpr uint16_t min_size
Minimum pack/unpack required data size.

◆ unpack()

uint16_t HF::Interfaces::SimpleVisualEffects::FadeEffect::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 222 of file simple_visual_effects.h.

References duration, end, HF_SERIALIZABLE_CHECK, min_size, HF::Common::ByteArray::read(), and start.

223  {
224  HF_SERIALIZABLE_CHECK(array, offset, min_size);
225 
226  offset += array.read(offset, start);
227  offset += array.read(offset, end);
228  offset += array.read(offset, duration);
229 
230  return min_size;
231  }
static constexpr uint16_t min_size
Minimum pack/unpack required data size.
uint8_t start
Start brightness in percentage.
#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...
uint8_t end
End brightness in percentage.
uint16_t duration
Time in miliseconds to go from start to end brightness.
+ Here is the call graph for this function:

Field Documentation

◆ duration

uint16_t HF::Interfaces::SimpleVisualEffects::FadeEffect::duration

Time in miliseconds to go from start to end brightness.

Definition at line 195 of file simple_visual_effects.h.

Referenced by pack(), and unpack().

◆ end

uint8_t HF::Interfaces::SimpleVisualEffects::FadeEffect::end

End brightness in percentage.

Definition at line 194 of file simple_visual_effects.h.

Referenced by pack(), and unpack().

◆ start

uint8_t HF::Interfaces::SimpleVisualEffects::FadeEffect::start

Start brightness in percentage.

Definition at line 193 of file simple_visual_effects.h.

Referenced by pack(), and unpack().


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