1 /* Bluetooth: Mesh Generic OnOff, Generic Level, Lighting & Vendor Models
2  *
3  * Copyright (c) 2018 Vikrant More
4  *
5  * SPDX-License-Identifier: Apache-2.0
6  */
7 
8 #ifndef _STATE_BINDING_H
9 #define _STATE_BINDING_H
10 
11 enum state_binding {
12 	ONOFF,
13 	LEVEL_LIGHT,
14 	DELTA_LEVEL_LIGHT,
15 	MOVE_LIGHT,
16 	ACTUAL,
17 	LINEAR,
18 	CTL_LIGHT,
19 
20 	LEVEL_TEMP,
21 	MOVE_TEMP,
22 	CTL_TEMP,
23 
24 	CTL_DELTA_UV
25 };
26 
27 uint16_t constrain_lightness(uint16_t light);
28 uint16_t constrain_temperature(uint16_t temp);
29 uint16_t level_to_light_ctl_temp(int16_t level);
30 
31 void set_target(uint8_t type, void *dptr);
32 int get_current(uint8_t type);
33 int get_target(uint8_t type);
34 
35 #endif
36