Z-Wave Protocol Controller Reference
zwave_tx_scheme_selector.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
26#ifndef ZWAVE_TX_SCHEME_SELECTOR_H
27#define ZWAVE_TX_SCHEME_SELECTOR_H
28
30#define ZWAVE_TX_SAFE_LOWEST_MAX_PAYLOAD 22
31
32#ifdef __cplusplus
33extern "C" {
34#endif
35
36#include "zwave_generic_types.h"
39#include "zwave_tx.h"
40
51
63 uint8_t endpoint_id,
64 zwave_controller_connection_info_t *connection_info);
65
78void zwave_tx_scheme_get_node_tx_options(uint32_t expected_qos_priority,
79 uint8_t expected_number_of_response,
80 uint32_t expected_discard_timeout_ms,
81 zwave_tx_options_t *tx_options);
82
91
100
111uint16_t
114
115#ifdef __cplusplus
116}
117#endif
118
119#endif //ZWAVE_TX_SCHEME_SELECTOR_H
zwave_controller_encapsulation_scheme_t
Definition: zwave_controller_connection_info.h:33
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
zwave_controller_encapsulation_scheme_t zwave_tx_scheme_get_node_highest_security_class(zwave_node_id_t node_id)
Return the Highest security Class of a NodeID.
Definition: zwave_tx_scheme_selector.c:107
void zwave_tx_scheme_get_zpc_granted_keys(zwave_keyset_t *keys)
Return a list of security keys which the controller can use.
Definition: zwave_tx_scheme_selector.c:57
void zwave_tx_scheme_get_node_connection_info(zwave_node_id_t node_id, uint8_t endpoint_id, zwave_controller_connection_info_t *connection_info)
Return a connection info parameters for sending a Z-Wave frame.
Definition: zwave_tx_scheme_selector.c:64
uint16_t zwave_tx_scheme_get_max_application_payload(zwave_node_id_t node_id, zwave_endpoint_id_t endpoint_id)
Computes how long of a frame can be sent to a given NodeID / Endpoint when queuing a frame at the app...
Definition: zwave_tx_scheme_selector.c:153
void zwave_tx_scheme_get_node_tx_options(uint32_t expected_qos_priority, uint8_t expected_number_of_response, uint32_t expected_discard_timeout_ms, zwave_tx_options_t *tx_options)
Define a Z-Wave frame transmission options.
Definition: zwave_tx_scheme_selector.c:87
uint16_t zwave_tx_scheme_get_max_payload(zwave_node_id_t node_id)
Computes the maximum number of bytes that can be sent to a given NodeID. (lowest layer)
Definition: zwave_tx_scheme_selector.c:114
Structure holding information about the source and destination when transmitting and receiving Z-Wave...
Definition: zwave_controller_connection_info.h:87
Definition: zwave_tx_definitions.h:131
const zwave_endpoint_id_t endpoint_id
const zwave_node_id_t node_id