Scan Dispatch#
API and Callbacks for the scan-dispatch Component.
This component allows existence of multiple consumers of the stack 802.15.4 scan results.
This plugin allows for multiple consumers of stack 802.15.4 scan callbacks.
Modules#
sl_zigbee_af_plugin_scan_dispatch_scan_results_t
sl_zigbee_af_plugin_scan_dispatch_scan_data_t
API#
Get the scan type.
Get whether the originally requested scan has completed.
Result in a failure.
Schedule a scan.
Remove all consumers in the queue.
Typedefs#
Handle scan results.
Macros#
The size of the dispatch queue.
API Documentation#
sl_zigbee_af_scan_dispatch_scan_results_get_scan_type#
sl_zigbee_network_scan_type_t sl_zigbee_af_scan_dispatch_scan_results_get_scan_type (sl_zigbee_af_plugin_scan_dispatch_scan_results_t * results)
Get the scan type.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_zigbee_af_plugin_scan_dispatch_scan_results_t * | N/A | results | The sl_zigbee_af_plugin_scan_dispatch_scan_results_t for which the scan type will be found. |
Gets the scan type from an sl_zigbee_af_plugin_scan_dispatch_scan_results_t. This value will either be ::SL_ZIGBEE_ENERGY_SCAN, ::SL_ZIGBEE_ACTIVE_SCAN or ::SL_ZIGBEE_ACTIVE_SCAN_ROUTER
Returns
The ::sl_zigbee_network_scan_type_t of the scan results.
sl_zigbee_af_scan_dispatch_scan_results_are_complete#
bool sl_zigbee_af_scan_dispatch_scan_results_are_complete (sl_zigbee_af_plugin_scan_dispatch_scan_results_t * results)
Get whether the originally requested scan has completed.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_zigbee_af_plugin_scan_dispatch_scan_results_t * | N/A | results | The sl_zigbee_af_plugin_scan_dispatch_scan_results_t that belong to a potentially complete scan. |
This can happen either when the dispatcher asks the stack for a scan (see ::sl_zigbee_start_scan) or after all of the scan results have been delivered to the consumer (see sl_zigbee_af_scan_complete_cb).
Returns
Indicates whether or not the scan for the scan results is complete.
sl_zigbee_af_scan_dispatch_scan_results_are_failure#
bool sl_zigbee_af_scan_dispatch_scan_results_are_failure (sl_zigbee_af_plugin_scan_dispatch_scan_results_t * results)
Result in a failure.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_zigbee_af_plugin_scan_dispatch_scan_results_t * | N/A | results | The sl_zigbee_af_plugin_scan_dispatch_scan_results_t for which the call to ::sl_zigbee_start_scan may have failed. |
Gets whether or not the scan results are from a failed call to ::sl_zigbee_start_scan.
Returns
Indicates whether or not the call to ::sl_zigbee_start_scan failed for these results.
sl_zigbee_af_scan_dispatch_schedule_scan#
sl_status_t sl_zigbee_af_scan_dispatch_schedule_scan (sl_zigbee_af_plugin_scan_dispatch_scan_data_t * data)
Schedule a scan.
Type | Direction | Argument Name | Description |
---|---|---|---|
sl_zigbee_af_plugin_scan_dispatch_scan_data_t * | N/A | data | An sl_zigbee_af_plugin_scan_dispatch_scan_data_t that holds the scanType, channelMask, duration, and sl_zigbee_af_plugin_scan_dispatch_scan_results_handler_t for the scan. |
This API schedules an 802.15.4 scan. The results will be delivered to the consumer via a handler in the passed sl_zigbee_af_plugin_scan_dispatch_scan_data_t.
Returns
An sl_status_t value describing the result of the scheduling of a scan.
sl_zigbee_af_scan_dispatch_clear#
void sl_zigbee_af_scan_dispatch_clear (void )
Remove all consumers in the queue.
Type | Direction | Argument Name | Description |
---|---|---|---|
void | N/A |
A call to this function will remove all consumers in the queue for scan results. It will also cancel any 802.15.4 scan that the stack is currently performing.
Typedef Documentation#
sl_zigbee_af_plugin_scan_dispatch_scan_results_handler_t#
typedef void(* sl_zigbee_af_plugin_scan_dispatch_scan_results_handler_t) (sl_zigbee_af_plugin_scan_dispatch_scan_results_t *results) )(sl_zigbee_af_plugin_scan_dispatch_scan_results_t *results)
Handle scan results.