Zigbee Protocol Controller 1.6.0
zigpc_discovery_process.hpp
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 ZIGPC_DISCOVERY_PROCESS_HPP
25#define ZIGPC_DISCOVERY_PROCESS_HPP
26
27#include <memory>
28#include <queue>
29
30// Shared Unify includes
31#include <sl_status.h>
32
33// ZigPC includes
34#include <zigpc_common_zigbee.h>
35
36// Component includes
38
40{
41using event_t = std::unique_ptr<events::DiscoverEvent>;
42
48size_t queue_size(void);
49
55const event_t *peek_event(void);
56
64
69void clear_queue(void);
70
71} // namespace zigpc_discovery::process
72
73#endif /* ZIGPC_DISCOVERY_PROCESS_HPP */
74
uint32_t sl_status_t
Definition: sl_status.h:139
Definition: zigpc_discovery_process.hpp:40
std::unique_ptr< events::DiscoverEvent > event_t
Definition: zigpc_discovery_process.hpp:41
sl_status_t enqueue_event(event_t &&event)
Add an event to be processed in the zigpc_discovery process context.
size_t queue_size(void)
Retrieve the current number of events in the process queue.
const event_t * peek_event(void)
Add an event to be processed in the zigpc_discovery process context.
void clear_queue(void)
Remove all events from process queue.
SL Status Codes.