RDK Documentation (Open Sourced RDK Components)
rdmMgr.h
Go to the documentation of this file.
1 /*
2  * If not stated otherwise in this file or this component's Licenses.txt file the
3  * following copyright and licenses apply:
4  *
5  * Copyright 2016 RDK Management
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18 */
19 
20 /**
21 * @file rdmMgr.h
22 *
23 * @brief IARM-Bus RDM Manager Public API.
24 */
25 
26 /**
27 * @defgroup iarmmgrs
28 * @{
29 * @defgroup rdmmgr
30 * @{
31 **/
32 
33 
34 #ifndef _IARM_BUS_RDMMGR_H
35 #define _IARM_BUS_RDMMGR_H
36 
37 
38 #ifdef __cplusplus
39 extern "C"
40 {
41 #endif
42 
43 #define IARM_BUS_RDMMGR_NAME "RDMMgr" /*!< IARM BUS name for rdm manager */
44 
45 #define RDM_PKG_NAME "pkg_name"
46 #define RDM_PKG_VERSION "pkg_version"
47 #define RDM_PKG_INST_PATH "pkg_inst_path"
48 #define RDM_PKG_INST_STATUS "pkg_inst_status"
49 #define RDM_PKG_NAME_MAX_SIZE 128
50 #define RDM_PKG_VERSION_MAX_SIZE 8
51 #define RDM_PKG_INST_PATH_MAX_SIZE 256
52 
53 /*! Published Events from rdm manager */
54 typedef enum _RDMMgr_EventId_t {
55  IARM_BUS_RDMMGR_EVENT_APPDOWNLOADS_CHANGED = 0, /*!< RDM application download status chnaged*/
56  IARM_BUS_RDMMGR_EVENT_APP_INSTALLATION_STATUS, /*!< RDM application installation status */
57  IARM_BUS_RDMMGR_EVENT_MAX /*!< Max Event Id */
59 
60 
61 typedef enum _RDMMgr_Status_t {
62  RDM_PKG_INSTALL_COMPLETE = 0,
63  RDM_PKG_INSTALL_ERROR, // 1
64  RDM_PKG_DOWNLOAD_COMPLETE, // 2
65  RDM_PKG_DOWNLOAD_ERROR, // 3
66  RDM_PKG_EXTRACT_COMPLETE, // 4
67  RDM_PKG_EXTRACT_ERROR, // 5
68  RDM_PKG_VALIDATE_COMPLETE, // 6
69  RDM_PKG_VALIDATE_ERROR, // 7
70  RDM_PKG_POSTINSTALL_COMPLETE, // 8
71  RDM_PKG_POSTINSTALL_ERROR, // 9
72  RDM_PKG_UNINSTALL, // 10
73  RDM_PKG_INVALID_INPUT // 11
74 } IARM_RDMMgr_Status_t;
75 
76 
77 typedef struct _RDMMgr_EventData_t {
78  struct _pkg_info {
79  char pkg_name[RDM_PKG_NAME_MAX_SIZE];
80  char pkg_version[RDM_PKG_VERSION_MAX_SIZE];
81  char pkg_inst_path[RDM_PKG_INST_PATH_MAX_SIZE];
82  IARM_RDMMgr_Status_t pkg_inst_status;
83  } rdm_pkg_info;
85 
86 
87 #ifdef __cplusplus
88 }
89 #endif
90 
91 #endif
92 
93 /* End of IARM_BUS_RDMMGR_API doxygen group */
94 /**
95  * @}
96  */
97 
98 
99 
100 /** @} */
101 /** @} */
IARM_Bus_RDMMgr_EventId_t
enum _RDMMgr_EventId_t IARM_Bus_RDMMgr_EventId_t
_RDMMgr_EventData_t
Definition: rdmMgr.h:77
_RDMMgr_EventData_t::_pkg_info
Definition: rdmMgr.h:78
IARM_BUS_RDMMGR_EVENT_APPDOWNLOADS_CHANGED
@ IARM_BUS_RDMMGR_EVENT_APPDOWNLOADS_CHANGED
Definition: rdmMgr.h:55
IARM_BUS_RDMMGR_EVENT_APP_INSTALLATION_STATUS
@ IARM_BUS_RDMMGR_EVENT_APP_INSTALLATION_STATUS
Definition: rdmMgr.h:56
IARM_BUS_RDMMGR_EVENT_MAX
@ IARM_BUS_RDMMGR_EVENT_MAX
Definition: rdmMgr.h:57
_RDMMgr_EventId_t
_RDMMgr_EventId_t
Definition: rdmMgr.h:54