Zigbee Protocol Controller 1.6.0
zigpc_attrmgmt_int.hpp
Go to the documentation of this file.
1/*******************************************************************************
2 * # License
3 * <b>Copyright 2021 Silicon Laboratories Inc. www.silabs.com</b>
4 *******************************************************************************
5 *
6 * The licensor of this software is Silicon Laboratories Inc. Your use of this
7 * software is governed by the terms of Silicon Labs Master Software License
8 * Agreement (MSLA) available at
9 * www.silabs.com/about-us/legal/master-software-license-agreement. This
10 * software is distributed to you in Source Code format and is governed by the
11 * sections of the MSLA applicable to Source Code.
12 *
13 ******************************************************************************/
14
24#ifndef ZIGPC_ATTRMGMT_INT_HPP
25#define ZIGPC_ATTRMGMT_INT_HPP
26
27#include <vector>
28#include <list>
29
30#include "sl_status.h"
31
32#include "zcl_attribute_info.h"
33#include "zcl_definitions.h"
34
35static const unsigned int ZCL_CONFIGURE_STATUS_RESPONSE_SIZE = 4;
36
38
43typedef struct {
44 uint8_t status;
45 uint8_t direction;
46 uint16_t attribute_id;
48
58 zcl_cluster_id_t cluster_id,
59 std::vector<zigpc_zcl_configure_reporting_record_t> &record_list);
60
78 const zigbee_eui64_t eui64,
79 zigbee_endpoint_id_t endpoint_id,
80 zcl_cluster_id_t cluster_id,
81 const std::vector<zigpc_zcl_configure_reporting_record_t> &records);
82
99 const zigbee_eui64_t eui64,
100 zigbee_endpoint_id_t endpoint_id,
101 zcl_cluster_id_t cluster_id,
102 const std::vector<zcl_attribute_id_t> &attr_ids);
103
118 zigbee_endpoint_id_t &endpoint_id,
119 zcl_cluster_id_t &cluster_id);
120
132 const configure_response_buffer_t buffer,
134
146 const uint8_t *buffer,
147 size_t buffer_len,
148 std::list<zigpc_attrmgmt_configure_status_record_t> &record_list);
149#endif //ZIGPC_ATTRMGMT_INT_HPP
150
uint8_t configure_response_buffer_t[ZCL_CONFIGURE_STATUS_RESPONSE_SIZE]
Definition: zigpc_attrmgmt_int.hpp:37
sl_status_t zigpc_attrmgmt_buffer_to_configure_status_list(const uint8_t *buffer, size_t buffer_len, std::list< zigpc_attrmgmt_configure_status_record_t > &record_list)
zigpc_attrmgmt_buffer_to_configure_status_list Extracts a series of records from a buffer of bytes
sl_status_t zigpc_attrmgmt_build_configure_report_records(zcl_cluster_id_t cluster_id, std::vector< zigpc_zcl_configure_reporting_record_t > &record_list)
Build list of ZCL Configure Report Records for a given cluster.
sl_status_t zigpc_attrmgmt_buffer_to_configure_status(const configure_response_buffer_t buffer, zigpc_attrmgmt_configure_status_record_t &record)
zigpc_attrmgmt_buffer_to_configure_status Extract a configure report status record from a buffer of 4...
sl_status_t zigpc_attrmgmt_send_split_read_cmds(const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_id_t cluster_id, const std::vector< zcl_attribute_id_t > &attr_ids)
Split a list of Attribute Read records into sets of ZIGPC_ATTRMGMT_READ_RECORDS_LIMIT_PER_MESSAGE siz...
static const unsigned int ZCL_CONFIGURE_STATUS_RESPONSE_SIZE
Definition: zigpc_attrmgmt_int.hpp:35
sl_status_t zigpc_attrmgmt_send_split_report_config_cmds(const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_id_t cluster_id, const std::vector< zigpc_zcl_configure_reporting_record_t > &records)
Split a list of Attribute Report Configuration records into sets of ZIGPC_ATTRMGMT_REPORT_RECORDS_LIM...
sl_status_t zigpc_attrmgmt_get_next_poll_entry(zigbee_eui64_uint_t &eui64, zigbee_endpoint_id_t &endpoint_id, zcl_cluster_id_t &cluster_id)
zigpc_attrmgmt_get_next_poll_entry Get the next poll entry to be sent
uint32_t sl_status_t
Definition: sl_status.h:139
uint8_t zigbee_eui64_t[ZIGBEE_EUI64_SIZE]
Zigbee Device EUI64 ID.
Definition: zigpc_common_zigbee.h:193
uint16_t zcl_cluster_id_t
A representation of the endpoint cluster id used in ZCL.
Definition: zigpc_common_zigbee.h:254
uint64_t zigbee_eui64_uint_t
Zigbee Device Identifier (stored as integer)
Definition: zigpc_common_zigbee.h:199
uint8_t zigbee_endpoint_id_t
A representation of the endpoint id used on the Zigbee protocol.
Definition: zigpc_common_zigbee.h:248
SL Status Codes.
the structure representing a configure reporting response frame
Definition: zigpc_attrmgmt_int.hpp:43
uint8_t status
Definition: zigpc_attrmgmt_int.hpp:44
uint16_t attribute_id
Definition: zigpc_attrmgmt_int.hpp:46
uint8_t direction
Definition: zigpc_attrmgmt_int.hpp:45