nRF Connect SDK API 0.1.0
Loading...
Searching...
No Matches
light_xyl_cli.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2020 Nordic Semiconductor ASA
3 *
4 * SPDX-License-Identifier: LicenseRef-Nordic-5-Clause
5 */
6
14#ifndef BT_MESH_LIGHT_XYL_CLI_H__
15#define BT_MESH_LIGHT_XYL_CLI_H__
16
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
25
32#define BT_MESH_MODEL_LIGHT_XYL_CLI(_cli) \
33 BT_MESH_MODEL_CB(BT_MESH_MODEL_ID_LIGHT_XYL_CLI, \
34 _bt_mesh_light_xyl_cli_op, &(_cli)->pub, \
35 BT_MESH_MODEL_USER_DATA(struct bt_mesh_light_xyl_cli, \
36 _cli), \
37 &_bt_mesh_light_xyl_cli_cb)
38
48 void (*const xyl_status)(struct bt_mesh_light_xyl_cli *cli,
49 struct bt_mesh_msg_ctx *ctx,
50 const struct bt_mesh_light_xyl_status *status);
51
59 void (*const target_status)(
60 struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx,
61 const struct bt_mesh_light_xyl_status *status);
62
69 void (*const range_status)(
70 struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx,
71 const struct bt_mesh_light_xyl_range_status *status);
72
79 void (*const default_status)(struct bt_mesh_light_xyl_cli *cli,
80 struct bt_mesh_msg_ctx *ctx,
81 const struct bt_mesh_light_xyl *status);
82};
83
87 const struct bt_mesh_model *model;
89 struct bt_mesh_model_pub pub;
90 /* Publication message */
91 struct net_buf_simple pub_msg;
92 /* Publication message buffer. */
93 uint8_t buf[BT_MESH_MODEL_BUF_LEN(BT_MESH_LIGHT_XYL_OP_SET,
94 BT_MESH_LIGHT_XYL_MSG_MAXLEN_SET)];
95
97 struct bt_mesh_msg_ack_ctx ack_ctx;
99 uint8_t tid;
102};
103
122 struct bt_mesh_msg_ctx *ctx,
123 struct bt_mesh_light_xyl_status *rsp);
124
144 struct bt_mesh_msg_ctx *ctx,
145 const struct bt_mesh_light_xyl_set_params *set,
146 struct bt_mesh_light_xyl_status *rsp);
147
161 struct bt_mesh_msg_ctx *ctx,
162 const struct bt_mesh_light_xyl_set_params *set);
163
182 struct bt_mesh_msg_ctx *ctx,
183 struct bt_mesh_light_xyl_status *rsp);
184
203 struct bt_mesh_msg_ctx *ctx,
204 struct bt_mesh_light_xyl *rsp);
205
225 struct bt_mesh_msg_ctx *ctx,
226 const struct bt_mesh_light_xyl *set,
227 struct bt_mesh_light_xyl *rsp);
228
243 struct bt_mesh_msg_ctx *ctx,
244 const struct bt_mesh_light_xyl *set);
245
264 struct bt_mesh_msg_ctx *ctx,
266
288 struct bt_mesh_msg_ctx *ctx,
289 const struct bt_mesh_light_xy_range *set,
291
307 struct bt_mesh_msg_ctx *ctx,
308 const struct bt_mesh_light_xy_range *set);
309
311extern const struct bt_mesh_model_op _bt_mesh_light_xyl_cli_op[];
312extern const struct bt_mesh_model_cb _bt_mesh_light_xyl_cli_cb;
315#ifdef __cplusplus
316}
317#endif
318
319#endif /* BT_MESH_LIGHT_XYL_CLI_H__ */
320
int bt_mesh_light_xyl_default_set(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xyl *set, struct bt_mesh_light_xyl *rsp)
Set the default xyL value of the server.
int bt_mesh_light_xyl_range_set_unack(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xy_range *set)
Set the xyL Range of the server without requesting a response.
int bt_mesh_light_xyl_default_set_unack(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xyl *set)
Set the default xyL value of the server without requesting a response.
int bt_mesh_light_xyl_set(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xyl_set_params *set, struct bt_mesh_light_xyl_status *rsp)
Set the xyL state of the server.
int bt_mesh_light_xyl_range_get(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, struct bt_mesh_light_xyl_range_status *rsp)
Get the Light xyL state of the bound server.
int bt_mesh_light_xyl_set_unack(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xyl_set_params *set)
Set the xyL state of the server without requesting a response.
int bt_mesh_light_xyl_target_get(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, struct bt_mesh_light_xyl_status *rsp)
Get the Light xyL target state of the bound server.
int bt_mesh_light_xyl_default_get(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, struct bt_mesh_light_xyl *rsp)
Get the Light xyL default state of the bound server.
int bt_mesh_light_xyl_range_set(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xy_range *set, struct bt_mesh_light_xyl_range_status *rsp)
Set the xyL Range of the server.
int bt_mesh_light_xyl_get(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, struct bt_mesh_light_xyl_status *rsp)
Get the Light xyL state of the bound server.
Definition: light_xyl.h:73
void(*const xyl_status)(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xyl_status *status)
xyL status message handler.
Definition: light_xyl_cli.h:48
void(*const default_status)(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xyl *status)
Default parameter status message handler.
Definition: light_xyl_cli.h:79
void(*const range_status)(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xyl_range_status *status)
xyL Range status message handler.
Definition: light_xyl_cli.h:69
void(*const target_status)(struct bt_mesh_light_xyl_cli *cli, struct bt_mesh_msg_ctx *ctx, const struct bt_mesh_light_xyl_status *status)
xyL target status message handler.
Definition: light_xyl_cli.h:59
Definition: light_xyl_cli.h:40
struct bt_mesh_msg_ack_ctx ack_ctx
Definition: light_xyl_cli.h:97
uint8_t tid
Definition: light_xyl_cli.h:99
uint8_t buf[BT_MESH_MODEL_BUF_LEN(BT_MESH_LIGHT_XYL_OP_SET, BT_MESH_LIGHT_XYL_MSG_MAXLEN_SET)]
Definition: light_xyl_cli.h:94
struct bt_mesh_model_pub pub
Definition: light_xyl_cli.h:89
struct net_buf_simple pub_msg
Definition: light_xyl_cli.h:91
const struct bt_mesh_light_xyl_cli_handlers * handlers
Definition: light_xyl_cli.h:101
const struct bt_mesh_model * model
Definition: light_xyl_cli.h:87
Definition: light_xyl_cli.h:85
Definition: light_xyl.h:81
Definition: light_xyl.h:41
Definition: light_xyl.h:65
Definition: light_xyl.h:33