Z-Wave Protocol Controller Reference
zwave_controller_callbacks.c File Reference
Include dependency graph for zwave_controller_callbacks.c:

Macros

#define LOG_TAG   "zwave_controller_dispatch"
 
#define ZWAVE_CONTROLLER_DISPATCH_CALLBACKS(callback_function, ...)
 Helper macro to call all registered callbacks in the callback array. More...
 

Functions

sl_status_t zwave_controller_register_callbacks (const zwave_controller_callbacks_t *callbacks)
 Let another component register its callbacks for Z-Wave Controller events. More...
 
sl_status_t zwave_controller_deregister_callbacks (const zwave_controller_callbacks_t *callbacks)
 Let another component deregister its callbacks for Z-Wave Controller events. More...
 
sl_status_t zwave_controller_register_reset_step (zwave_controller_reset_step_t step_function, int32_t priority)
 Let another component register a step to perform when being reset. More...
 
void zwave_controller_reset ()
 Instructs the Z-Wave Controller to initiate a Set Default / Reset operation. More...
 
bool zwave_controller_is_reset_ongoing ()
 Tells if we are currently reseting the ZPC. More...
 
void zwave_controller_on_reset_step_complete (int32_t priority)
 Informs the Z-Wave Controller that a Reset Step is completed. More...
 
void zwave_controller_callbacks_init (void)
 Reset all callback structures. More...
 
void zwave_controller_on_state_updated (zwave_network_management_state_t state)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_error (zwave_network_management_error_t error)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_node_id_assigned (zwave_node_id_t node_id, zwave_protocol_t inclusion_protocol)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_node_deleted (zwave_node_id_t node_id)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_node_info_req_failed (zwave_node_id_t node_id)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_frame_transmission (bool transmission_successful, const zwapi_tx_report_t *tx_status, zwave_node_id_t node_id)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_node_added (sl_status_t status, const zwave_node_info_t *nif, zwave_node_id_t node_id, zwave_dsk_t dsk, zwave_keyset_t granted_keys, zwave_kex_fail_type_t kex_fail_type, zwave_protocol_t inclusion_protocol)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_network_address_update (zwave_home_id_t home_id, zwave_node_id_t node_id)
 Tell the Z-Wave Controller to anounce to all other components that we changed network address. More...
 
void zwave_controller_on_new_network_entered (zwave_home_id_t home_id, zwave_node_id_t node_id, zwave_keyset_t granted_keys, zwave_kex_fail_type_t kex_fail_type)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_keys_report (bool csa, zwave_keyset_t keys)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_dsk_report (uint8_t input_length, zwave_dsk_t dsk, zwave_keyset_t keys)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_frame_reception (zwave_node_id_t node_id)
 Tell the Z-Wave Controller that we received a frame (Rx) from a NodeID. More...
 
void zwave_controller_on_frame_received (const zwave_controller_connection_info_t *connection_info, const zwave_rx_receive_options_t *rx_options, const uint8_t *frame_data, uint16_t frame_length)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_protocol_cc_encryption_request_received (const zwave_node_id_t destination_node_id, const uint8_t payload_length, const uint8_t *const payload, const uint8_t protocol_metadata_length, const uint8_t *const protocol_metadata, const uint8_t use_supervision, const uint8_t session_id)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_smart_start_inclusion_request (uint32_t home_id, bool already_included, const zwave_node_info_t *node_info, zwave_protocol_t inclusion_protocol)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_node_information (zwave_node_id_t node_id, const zwave_node_info_t *node_info)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_new_suc (zwave_node_id_t suc_node_id)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_multicast_group_deleted (zwave_multicast_group_id_t group_id)
 see zwave_controller_callbacks_t More...
 
void zwave_controller_on_request_neighbor_update (uint8_t status)
 see zwave_controller_callbacks_t More...
 

Variables

const zwave_controller_callbacks_tzwave_controller_callbacks_array [ZWAVE_CONTROLLER_MAXIMUM_CALLBACK_SUBSCRIBERS] = {NULL}
 
static zwave_controller_reset_step_t zwave_controller_reset_steps [ZWAVE_CONTROLLER_MAXIMUM_CALLBACK_SUBSCRIBERS] = {NULL}
 
static bool reset_ongoing
 

Macro Definition Documentation

◆ LOG_TAG

#define LOG_TAG   "zwave_controller_dispatch"

◆ ZWAVE_CONTROLLER_DISPATCH_CALLBACKS

#define ZWAVE_CONTROLLER_DISPATCH_CALLBACKS (   callback_function,
  ... 
)
Value:
i++) { \
&& zwave_controller_callbacks_array[i]->callback_function != NULL) { \
zwave_controller_callbacks_array[i]->callback_function(__VA_ARGS__); \
} \
}
#define ZWAVE_CONTROLLER_MAXIMUM_CALLBACK_SUBSCRIBERS
Maximum number of callbacks structures which may be registered.
Definition: zwave_controller_callbacks.h:278
const zwave_controller_callbacks_t * zwave_controller_callbacks_array[ZWAVE_CONTROLLER_MAXIMUM_CALLBACK_SUBSCRIBERS]
Definition: zwave_controller_callbacks.c:32

Helper macro to call all registered callbacks in the callback array.

Variable Documentation

◆ reset_ongoing

bool reset_ongoing
static

◆ zwave_controller_callbacks_array

const zwave_controller_callbacks_t* zwave_controller_callbacks_array[ZWAVE_CONTROLLER_MAXIMUM_CALLBACK_SUBSCRIBERS] = {NULL}

◆ zwave_controller_reset_steps