Feature/raspberry pi blinkt color objects (#503)
* fixed BACnetXYcolor and BACnetColorCommand encode and decoding and improved unit test coverage. Refactored BACnetXYcolor to/from ascii into lighting module. * added to the color, color temperature, and lighting output objects a fade/ramp/step engine. Added color and color command coercion into the channel object and enabled color temperature object coercion. Added CreateObject and DeleteObject service handling to the color, color temperature, lighting output, and channel objects. * added blinkt demo app for Raspberry Pi [WIP] * updated gitignore to simplify handling of apps folder contents * fixed piface demo build * added RaspiOS to pipeline for piface and blinkt! demo builds * added device object timer function for child object types into example Device object. Refactored device object to increment database revision for create or delete object services. Refactored example app/server to use mstimer library and device child object timers. --------- Co-authored-by: Steve Karg <skarg@users.sourceforge.net>
This commit is contained in:
@@ -33,6 +33,15 @@
|
||||
#include "bacnet/rp.h"
|
||||
#include "bacnet/wp.h"
|
||||
|
||||
/**
|
||||
* @brief Callback for write present value request
|
||||
* @param object_instance - object-instance number of the object
|
||||
* @param old_value - value prior to write
|
||||
* @param value - value of the write
|
||||
*/
|
||||
typedef void (*lighting_output_write_present_value_callback)(
|
||||
uint32_t object_instance, float old_value, float value);
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
@@ -193,6 +202,14 @@ extern "C" {
|
||||
uint32_t object_instance,
|
||||
float step_increment);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
BACNET_LIGHTING_TRANSITION Lighting_Output_Transition(
|
||||
uint32_t object_instance);
|
||||
BACNET_STACK_EXPORT
|
||||
bool Lighting_Output_Transition_Set(
|
||||
uint32_t object_instance,
|
||||
BACNET_LIGHTING_TRANSITION value);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
unsigned Lighting_Output_Default_Priority(
|
||||
uint32_t object_instance);
|
||||
@@ -201,10 +218,47 @@ extern "C" {
|
||||
uint32_t object_instance,
|
||||
unsigned priority);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
bool Lighting_Output_Color_Override(
|
||||
uint32_t object_instance);
|
||||
BACNET_STACK_EXPORT
|
||||
bool Lighting_Output_Color_Override_Set(
|
||||
uint32_t object_instance,
|
||||
bool value);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
bool Lighting_Output_Color_Reference(
|
||||
uint32_t object_instance,
|
||||
BACNET_OBJECT_ID *value);
|
||||
BACNET_STACK_EXPORT
|
||||
bool Lighting_Output_Color_Reference_Set(
|
||||
uint32_t object_instance,
|
||||
BACNET_OBJECT_ID *value);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
bool Lighting_Output_Override_Color_Reference(
|
||||
uint32_t object_instance,
|
||||
BACNET_OBJECT_ID *value);
|
||||
BACNET_STACK_EXPORT
|
||||
bool Lighting_Output_Override_Color_Reference_Set(
|
||||
uint32_t object_instance,
|
||||
BACNET_OBJECT_ID *value);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
void Lighting_Output_Timer(
|
||||
uint32_t object_instance,
|
||||
uint16_t milliseconds);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
void Lighting_Output_Write_Present_Value_Callback_Set(
|
||||
lighting_output_write_present_value_callback cb);
|
||||
|
||||
BACNET_STACK_EXPORT
|
||||
uint32_t Lighting_Output_Create(uint32_t object_instance);
|
||||
BACNET_STACK_EXPORT
|
||||
bool Lighting_Output_Delete(uint32_t object_instance);
|
||||
BACNET_STACK_EXPORT
|
||||
void Lighting_Output_Cleanup(void);
|
||||
BACNET_STACK_EXPORT
|
||||
void Lighting_Output_Init(
|
||||
void);
|
||||
|
||||
Reference in New Issue
Block a user