Z-Wave Protocol Controller Reference
binding_cluster_mapper_helper.h
Go to the documentation of this file.
1/******************************************************************************
2 * # License
3 * <b>Copyright 2022 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
24#ifndef BINDING_CLUSTER_MAPPER_HELPER_H
25#define BINDING_CLUSTER_MAPPER_HELPER_H
26
27#include <stdbool.h>
28#include "uic_typedefs.h"
29#include "zwave_generic_types.h"
31
32// Maximum number of bindable clusters that we will advertise in the return values.
33#define MAXIMUM_NUMBER_OF_BINDABLE_CLUSTERS 30
34
35// Maximum number of bindable clusters that we will advertise in the return values.
36#define MAXIMUM_NUMBER_OF_ASSOCIATION_GROUPS 255
37
38#ifdef __cplusplus
39extern "C" {
40#endif
41
51 zwave_command_class_t command_class, zwave_command_t command);
66 dotdot_unid_t unid,
67 dotdot_endpoint_id_t endpoint,
68 dotdot_cluster_id_t cluster_id,
69 association_group_id_t *group_id_list,
70 uint8_t *number_of_groups);
71
85 dotdot_unid_t unid,
86 dotdot_endpoint_id_t endpoint,
88 dotdot_cluster_id_t *cluster_id_list,
89 uint8_t *number_of_clusters);
90
103 dotdot_unid_t unid,
104 dotdot_endpoint_id_t endpoint,
105 dotdot_cluster_id_t *cluster_id_list,
106 uint8_t *number_of_clusters);
107
108#ifdef __cplusplus
109}
110#endif
111
112#endif //BINDING_CLUSTER_MAPPER_HELPER_H
void binding_mapper_helper_get_association_group_list_from_cluster(dotdot_unid_t unid, dotdot_endpoint_id_t endpoint, dotdot_cluster_id_t cluster_id, association_group_id_t *group_id_list, uint8_t *number_of_groups)
Finds the list of Association Groups to associate under a UNID/Endpoint that sends command that belon...
bool is_command_class_and_command_mapped_to_bindings(zwave_command_class_t command_class, zwave_command_t command)
Checks if the Command Class / Command combination is mapped to a cluster binding.
void binding_mapper_helper_get_cluster_list_from_association_group(dotdot_unid_t unid, dotdot_endpoint_id_t endpoint, association_group_id_t group_id, dotdot_cluster_id_t *cluster_id_list, uint8_t *number_of_clusters)
Finds the list of Clusters that an association group id covers with the commands it sends.
void binding_mapper_helper_get_bindable_cluster_list_from_node(dotdot_unid_t unid, dotdot_endpoint_id_t endpoint, dotdot_cluster_id_t *cluster_id_list, uint8_t *number_of_clusters)
Finds the list of bindable Clusters that the association groups of a node covers with commands it sen...
uint8_t association_group_id_t
‍Association Group ID Type
Definition: zwave_command_class_association_types.h:49
uint16_t zwave_command_class_t
Definition: zwave_generic_types.h:29
uint8_t zwave_command_t
Definition: zwave_generic_types.h:30