Tasmota/lib/libesp32/NimBLE-Arduino/src/mesh/model_cli.h
2020-10-26 12:51:06 +00:00

52 lines
1.3 KiB
C

/*
* Copyright (c) 2017 Intel Corporation
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef __MODEL_CLI_H__
#define __MODEL_CLI_H__
#ifdef __cplusplus
extern "C" {
#endif
struct bt_mesh_gen_model_cli {
struct bt_mesh_model *model;
struct k_sem op_sync;
u32_t op_pending;
void *op_param;
};
extern struct bt_mesh_gen_model_cli gen_onoff_cli;
extern const struct bt_mesh_model_op gen_onoff_cli_op[];
#define BT_MESH_MODEL_GEN_ONOFF_CLI() \
BT_MESH_MODEL(BT_MESH_MODEL_ID_GEN_ONOFF_CLI, \
gen_onoff_cli_op, NULL, &gen_onoff_cli)
extern struct bt_mesh_gen_model_cli gen_level_cli;
extern const struct bt_mesh_model_op gen_level_cli_op[];
#define BT_MESH_MODEL_GEN_LEVEL_CLI(pub) \
BT_MESH_MODEL(BT_MESH_MODEL_ID_GEN_LEVEL_CLI, \
gen_level_cli_op, NULL, &gen_level_cli)
int bt_mesh_gen_onoff_get(u16_t net_idx, u16_t addr, u16_t app_idx,
u8_t *state);
int bt_mesh_gen_onoff_set(u16_t net_idx, u16_t addr, u16_t app_idx,
u8_t val, u8_t *state);
int bt_mesh_gen_level_get(u16_t net_idx, u16_t addr, u16_t app_idx,
s16_t *level);
int bt_mesh_gen_level_set(u16_t net_idx, u16_t addr, u16_t app_idx,
s16_t val, s16_t *state);
int bt_mesh_gen_model_cli_init(struct bt_mesh_model *model, bool primary);
#ifdef __cplusplus
}
#endif
#endif /* __MODEL_CLI_H__ */