Zigbee Protocol Controller 1.6.0
zigpc_datastore.h File Reference
#include <sl_status.h>
#include <sl_log.h>
#include <zigpc_common_zigbee.h>

Go to the source code of this file.

Classes

struct  __attribute__
 Network information. More...
 

Functions

sl_status_t zigpc_datastore_create_network (void)
 Create network entity to be persisted. The read/write APIs can be used to manipulate the data associated with the network. More...
 
sl_status_t zigpc_datastore_read_network (zigpc_network_data_t *const data)
 Read data from persisted network entity. More...
 
sl_status_t zigpc_datastore_write_network (const zigpc_network_data_t *data)
 Write data to persisted network entity. More...
 
sl_status_t zigpc_datastore_remove_network (void)
 Remove persisted network entity. More...
 
size_t zigpc_datastore_get_device_count (void)
 Get count of devices persisted under the network. More...
 
sl_status_t zigpc_datastore_find_device_by_index (size_t index, zigbee_eui64_t *const eui64)
 Find a particular device entity and retrieve its search key (EUI64) based on an index. See zigpc_datastore_get_device_count on getting the total number of devices persisted. More...
 
sl_status_t zigpc_datastore_create_device (const zigbee_eui64_t eui64)
 Create device entity to be persisted under the network. The read/write APIs can be used to manipulate the data associated with this device entity. More...
 
sl_status_t zigpc_datastore_read_device (const zigbee_eui64_t eui64, zigpc_device_data_t *const data)
 Read data from a persisted device entity. More...
 
bool zigpc_datastore_is_device_contained (zigbee_eui64_uint_t device_eui64)
 Check is the datastore contains a device entity. More...
 
sl_status_t zigpc_datastore_write_device (const zigbee_eui64_t eui64, const zigpc_device_data_t *data)
 Write data to a persisted device entity. More...
 
sl_status_t zigpc_datastore_remove_device (const zigbee_eui64_t eui64)
 Remove persisted device entity. More...
 
sl_status_t zigpc_datastore_remove_device_children (const zigbee_eui64_t eui64)
 Remove persisted children under device entity. More...
 
size_t zigpc_datastore_get_endpoint_count (const zigbee_eui64_t eui64)
 Get count of endpoints persisted under a device. More...
 
sl_status_t zigpc_datastore_find_endpoint_by_index (const zigbee_eui64_t eui64, size_t index, zigbee_endpoint_id_t *endpoint_id)
 Find a particular endpoint entity persisted under a device and retrieve its search key (endpoint_id) based on an index. See zigpc_datastore_get_endpoint_count on getting the total number of endpoints persisted under a device. More...
 
sl_status_t zigpc_datastore_create_endpoint (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id)
 Create endpoint entity to be persisted under a device. The read/write APIs can be used to manipulate the data associated with this endpoint entity. More...
 
sl_status_t zigpc_datastore_read_endpoint (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zigpc_endpoint_data_t *const data)
 Read data from a persisted endpoint entity. More...
 
sl_status_t zigpc_datastore_write_endpoint (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, const zigpc_endpoint_data_t *data)
 Write data to a persisted device entity. More...
 
sl_status_t zigpc_datastore_remove_endpoint (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id)
 Remove persisted endpoint entity. More...
 
size_t zigpc_datastore_get_group_count (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, bool is_reported)
 Get count of groups persisted under an endpoint. More...
 
sl_status_t zigpc_datastore_find_group_by_index (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, bool is_reported, size_t index, zigbee_group_id_t *group_id)
 Find a particular group entity persisted under a device endpoint and retrieve its search key (group_id) based on an index. See zigpc_datastore_get_group_count on getting the total number of groupss persisted under a device endpoint. More...
 
bool zigpc_datastore_contains_group (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, bool is_reported, zigbee_group_id_t group_id)
 Determine if a particular group ID is supported under a device endpoint. More...
 
sl_status_t zigpc_datastore_create_group (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, bool is_reported, zigbee_group_id_t group_id)
 Create group entity to be persisted under a device endpoint. The read/write APIs can be used to manipulate the data associated with this group entity. More...
 
sl_status_t zigpc_datastore_read_group (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, bool is_reported, zigbee_group_id_t group_id, zigpc_group_data_t *const data)
 Read data from a persisted group entity. More...
 
sl_status_t zigpc_datastore_write_group (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, bool is_reported, zigbee_group_id_t group_id, const zigpc_group_data_t *data)
 Write data to a persisted group entity. More...
 
sl_status_t zigpc_datastore_remove_group (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, bool is_reported, zigbee_group_id_t group_id)
 Remove persisted group entity. More...
 
size_t zigpc_datastore_get_cluster_count (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side)
 Get count of clusters persisted under a device endpoint. More...
 
sl_status_t zigpc_datastore_find_cluster_by_index (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, size_t index, zcl_cluster_id_t *cluster_id)
 Find a particular cluster entity persisted under a device endpoint and retrieve its search key (cluster_id) based on an index. See zigpc_datastore_get_cluster_count on getting the total number of clusters persisted under a device endpoint. More...
 
bool zigpc_datastore_contains_cluster (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id)
 Determine if a particular cluster ID is supported under a device endpoint. More...
 
sl_status_t zigpc_datastore_create_cluster (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id)
 Create cluster entity to be persisted under a device endpoint. The read/write APIs can be used to manipulate the data associated with this cluster entity. More...
 
sl_status_t zigpc_datastore_read_cluster (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id, zigpc_cluster_data_t *const data)
 Read data from a persisted cluster entity. More...
 
sl_status_t zigpc_datastore_write_cluster (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id, const zigpc_cluster_data_t *data)
 Write data to a persisted cluster entity. More...
 
sl_status_t zigpc_datastore_remove_cluster (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id)
 Remove persisted cluster entity. More...
 
size_t zigpc_datastore_get_attribute_count (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id)
 Get count of attributes persisted under a cluster. More...
 
sl_status_t zigpc_datastore_read_attribute_list (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id, zcl_attribute_id_t *const attribute_list, size_t *attribute_count)
 Read the attribute list under a given cluster. More...
 
sl_status_t zigpc_datastore_write_attribute_list (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id, const zcl_attribute_id_t *attribute_list, size_t attribute_count)
 Write attribute list under a given cluster. This function will overwrite any existing list by removing any pre-existing list. More...
 
size_t zigpc_datastore_get_command_count (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id, zcl_command_type_t command_type)
 Get count of commands persisted under a cluster based on the command type passed in. More...
 
sl_status_t zigpc_datastore_read_command_list (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id, zcl_command_type_t command_type, zcl_command_id_t *const command_list, size_t *command_count)
 Read command list under a given cluster based on the command type passed in. More...
 
sl_status_t zigpc_datastore_write_command_list (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id, zcl_command_type_t command_type, const zcl_command_id_t *command_list, size_t command_count)
 Write command list under a given cluster based on the command type passed in. This function will overwrite any existing list by removing any pre-existing list. More...
 
sl_status_t zigpc_datastore_find_endpoint_containing_cluster (const zigbee_eui64_t eui64, zcl_cluster_side_t cluster_side, zcl_cluster_id_t cluster_id, zigbee_endpoint_id_t *const endpoint_id)
 Find the endpoint identifier under a device containing a particular cluster identifier. More...
 
void zigpc_datastore_log_device_disc_state (const zigbee_eui64_t eui64)
 Log the stored discovery information under a device which includes: endpoints, clusters, attributes, and command support information. More...
 
sl_status_t zigpc_datastore_log_network (const char *log_tag, sl_log_level_t log_level, const char *log_prefix)
 Log the network information. More...
 
sl_status_t zigpc_datastore_log_device (const char *log_tag, sl_log_level_t log_level, const char *log_prefix, const zigbee_eui64_t eui64)
 Log single device entity. More...
 
void zigpc_datastore_log_clusters (const zigbee_eui64_t eui64, const zigbee_endpoint_id_t endpoint_id)
 Log clusters on an EUI64, endpoint. Logs both server and client clusters. More...