Line data Source code
1 0 : /*
2 : * Copyright (c) 2024 Nordic Semiconductor ASA
3 : *
4 : * SPDX-License-Identifier: Apache-2.0
5 : */
6 :
7 : #ifndef H_ENUM_MGMT_
8 : #define H_ENUM_MGMT_
9 :
10 : /**
11 : * @brief MCUmgr Enumeration Management API
12 : * @defgroup mcumgr_enum_mgmt Enumeration Management
13 : * @ingroup mcumgr_mgmt_api
14 : * @{
15 : */
16 :
17 : #ifdef __cplusplus
18 : extern "C" {
19 : #endif
20 :
21 : /**
22 : * @name Command IDs for enumeration management group.
23 : * @{
24 : */
25 1 : #define ENUM_MGMT_ID_COUNT 0 /**< Count of supported groups */
26 1 : #define ENUM_MGMT_ID_LIST 1 /**< List supported groups */
27 1 : #define ENUM_MGMT_ID_SINGLE 2 /**< Fetch single group ID */
28 1 : #define ENUM_MGMT_ID_DETAILS 3 /**< Details on supported groups */
29 : /**
30 : * @}
31 : */
32 :
33 : /**
34 : * Command result codes for enumeration management group.
35 : */
36 1 : enum enum_mgmt_err_code_t {
37 : /** No error, this is implied if there is no ret value in the response */
38 : ENUM_MGMT_ERR_OK = 0,
39 :
40 : /** Unknown error occurred. */
41 : ENUM_MGMT_ERR_UNKNOWN,
42 :
43 : /** Too many entries were provided. */
44 : ENUM_MGMT_ERR_TOO_MANY_GROUP_ENTRIES,
45 :
46 : /** Insufficient heap memory to store entry data. */
47 : ENUM_MGMT_ERR_INSUFFICIENT_HEAP_FOR_ENTRIES,
48 :
49 : /** Provided index is larger than the number of supported grouped. */
50 : ENUM_MGMT_ERR_INDEX_TOO_LARGE,
51 : };
52 :
53 : /**
54 : * @}
55 : */
56 :
57 : #ifdef __cplusplus
58 : }
59 : #endif
60 :
61 : #endif /* H_ENUM_MGMT_ */
|