Z-Wave Protocol Controller Reference
zwave_controller_storage.h
Go to the documentation of this file.
1/******************************************************************************
2 * # License
3 * <b>Copyright 2021 Silicon Laboratories Inc. www.silabs.com</b>
4 ******************************************************************************
5 * The licensor of this software is Silicon Laboratories Inc. Your use of this
6 * software is governed by the terms of Silicon Labs Master Software License
7 * Agreement (MSLA) available at
8 * www.silabs.com/about-us/legal/master-software-license-agreement. This
9 * software is distributed to you in Source Code format and is governed by the
10 * sections of the MSLA applicable to Source Code.
11 *
12 *****************************************************************************/
13
23#ifndef ZWAVE_CONTROLLER_STORAGE_H
24#define ZWAVE_CONTROLLER_STORAGE_H
25
26// Generic includes
27#include <stdbool.h>
28
29// Z-Wave definitions
33#include "zwave_generic_types.h"
35
36// Unify includes
37#include "sl_status.h"
38
39#ifdef __cplusplus
40extern "C" {
41#endif
42
43typedef struct {
45 sl_status_t (*set_node_as_s2_capable)(zwave_node_id_t node_id);
47 bool (*is_node_S2_capable)(zwave_node_id_t node_id);
49 sl_status_t (*get_node_granted_keys)(zwave_node_id_t node_id,
50 zwave_keyset_t *keys);
52 zwave_protocol_t (*get_inclusion_protocol)(zwave_node_id_t node_id);
54 zwave_cc_version_t (*zwave_controller_storage_cc_version)(
55 zwave_command_class_t command_class,
59
60
72
80
88
112 zwave_keyset_t *keys);
113
124
125#ifdef __cplusplus
126}
127#endif
128
129#endif //ZWAVE_CONTROLLER_STORAGE_H
uint32_t sl_status_t
Definition: sl_status.h:139
uint8_t zwave_cc_version_t
‍Version of a Z-Wave Command Class
Definition: zwave_command_class_version_types.h:26
zwave_protocol_t zwave_controller_storage_inclusion_protocol(zwave_node_id_t node_id)
Returns the protocol that the node is running in this network.
Definition: zwave_controller_storage.c:121
sl_status_t zwave_controller_storage_get_node_granted_keys(zwave_node_id_t node_id, zwave_keyset_t *keys)
Return the granted keys for a node.
Definition: zwave_controller_storage.c:108
bool zwave_controller_storage_is_node_s2_capable(zwave_node_id_t node_id)
Verify if the registered node is supporting S2.
Definition: zwave_controller_storage.c:70
sl_status_t zwave_controller_storage_callback_register(const zwave_controller_storage_callback_t *callbacks)
zwave_controller_storage callbacks register API
Definition: zwave_controller_storage.c:52
sl_status_t zwave_controller_storage_as_set_node_s2_capable(zwave_node_id_t node_id)
Set the Z-Wave node as s2 capable when it supports S2.
Definition: zwave_controller_storage.c:82
zwave_cc_version_t zwave_controller_storage_get_cc_version(zwave_command_class_t command_class, zwave_node_id_t node_id, zwave_endpoint_id_t endpoint_id)
Return the version of a Command Class implemented by a node.
Definition: zwave_controller_storage.c:94
uint16_t zwave_command_class_t
Definition: zwave_generic_types.h:29
enum zwave_protocol zwave_protocol_t
Z-Wave Inclusion Protocol (Z-Wave / Z-Wave Long Range).
uint8_t zwave_keyset_t
Definition: zwave_keyset_definitions.h:32
uint8_t zwave_endpoint_id_t
Z-Wave Endpoint ID type.
Definition: zwave_node_id_definitions.h:125
uint16_t zwave_node_id_t
Z-Wave NodeID type.
Definition: zwave_node_id_definitions.h:84
SL Status Codes.
Definition: zwave_controller_storage.h:43
const zwave_endpoint_id_t endpoint_id
const zwave_node_id_t node_id
static zwave_s2_network_callbacks_t callbacks
Definition: zwave_s2_network.c:30