13#ifndef _MESHX_MODEL_SENSOR_HPP_
14#define _MESHX_MODEL_SENSOR_HPP_
19#define MESHX_SENSOR_SERVER_MODEL_TEMPLATE_PROTO
20#define MESHX_SENSOR_SERVER_MODEL_TEMPLATE_PARAMS
22#if CONFIG_ENABLE_SENSOR_SERVER
41 :
public meshXServerModel<meshXBaseSensorServerModel, meshx_sensor_server_send_params_t>
Interface class for MeshX elements.
Definition meshx_fwd_decl.hpp:82
meshXElementIF * parent_element
Definition meshx_model_class.hpp:42
uint16_t model_func_id
Definition meshx_model_class.hpp:181
meshx_err_t plat_model_delete(void) override
Delete platform-specific sensor model instance.
Definition meshx_model_sensor.cpp:44
meshx_err_t prepare_element_msg(meshx_ptr_t *msg_ptr, size_t *msg_size) override
Prepare element message for sensor server.
Definition meshx_model_sensor.cpp:123
meshx_err_t model_from_ble_cb(dev_struct_t *, control_task_msg_evt_t, meshx_ptr_t) override
Callback for the Sensor Server model.
Definition meshx_model_sensor.cpp:82
meshx_err_t element_state_change_handle(void) override
Handle state change request from element.
Definition meshx_model_sensor.cpp:138
~meshXSensorServerModel() override=default
meshx_err_t model_send(meshx_sensor_server_send_params_t *params) override
Send a packet to the MeshX stack based on the given parameters.
Definition meshx_model_sensor.cpp:66
meshx_sensor_srv_el_msg_t element_msg
Definition meshx_model_sensor.hpp:67
meshx_err_t request_status(void)
Definition meshx_model_sensor.cpp:164
meshx_sensor_server_state_change_t model_state
Definition meshx_model_sensor.hpp:45
meshXSensorServerModel(meshXElementIF *parent_element=nullptr, meshx_ptr_t parent_element_state=nullptr, uint16_t model_func_id=0)
Constructor for Sensor Server Model.
Definition meshx_model_sensor.cpp:153
meshx_err_t plat_model_create(MESHX_MODEL *p_plat_model_ptr=nullptr) override
Create platform-specific sensor model instance.CONFIG_ENABLE_SENSOR_SERVER.
Definition meshx_model_sensor.cpp:19
meshx_sensor_server_state_change_t * get_state_ptr()
Definition meshx_model_sensor.hpp:64
meshXServerModel(MESHX_MODEL *p_plat_model, uint32_t model_id, meshXElementIF *parent_element=nullptr, meshx_ptr_t parent_element_state=nullptr, uint16_t model_func_id=0)
Definition meshx_model_class.cpp:200
Header file for MeshX Sensor Server model declarations.
struct meshx_sensor_server_send_params { meshx_model_t *model; meshx_ctx_t *ctx; meshx_sensor_server_state_change_t state;} meshx_sensor_server_send_params_t
Definition meshx_base_model_sensor.hpp:24
void * meshx_ptr_t
Definition meshx_ble_mesh_cmn_def.h:636
struct dev_struct dev_struct_t
Structure representing the device composition and elements.
uint32_t control_task_msg_evt_t
Type definition for control task message event.
Definition meshx_control_task.h:81
meshx_err_t
MeshX Error Codes.
Definition meshx_err.h:43
Template declarations for MeshX model wrapper classes.
struct meshx_srv_model_send_param_header meshx_srv_model_send_param_header_t
Definition meshx_model_class.hpp:354
#define MESHX_SENSOR_SERVER_MODEL_TEMPLATE_PROTO
Definition meshx_model_sensor.hpp:19
#define MESHX_SENSOR_SERVER_MODEL_TEMPLATE_PARAMS
Definition meshx_model_sensor.hpp:20
struct meshx_sensor_srv_el_msg meshx_sensor_srv_el_msg_t
Definition meshx_model_sensor.hpp:33
Definition meshx_ble_mesh_sensor_srv.h:33
Structure to hold the Sensor Server to element message.
Definition meshx_model_sensor.hpp:28
meshx_srv_model_send_param_header_t header
Definition meshx_model_sensor.hpp:29
meshx_sensor_server_state_change_t state
Definition meshx_model_sensor.hpp:30