Add package dependency attribute
[platform/core/appfw/pkgmgr-info.git] / include / pkgmgrinfo_basic.h
1 #ifndef __PKGMGR_INFO_BASIC_H__
2 #define __PKGMGR_INFO_BASIC_H__
3
4 #include <glib.h>
5
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9
10 typedef struct metadata_x {
11         char *key;
12         char *value;
13 } metadata_x;
14
15 typedef struct permission_x {
16         char *type;
17         char *value;
18 } permission_x;
19
20 typedef struct icon_x {
21         char *text;
22         char *lang;
23         char *section;
24         char *size;
25         char *resolution;
26         char *dpi;
27 } icon_x;
28
29 typedef struct image_x {
30         char *text;
31         char *lang;
32         char *section;
33 } image_x;
34
35 typedef struct define_x {
36         char *path;
37         GList *allowed;
38         GList *request;
39 } define_x;
40
41 typedef struct datashare_x {
42         GList *define;
43         GList *request;
44 } datashare_x;
45
46 typedef struct description_x {
47         char *name;
48         char *text;
49         char *lang;
50 } description_x;
51
52 typedef struct label_x {
53         char *name;
54         char *text;
55         char *lang;
56 } label_x;
57
58 typedef struct author_x {
59         char *email;
60         char *href;
61         char *text;
62         char *lang;
63 } author_x;
64
65 typedef struct license_x {
66         char *text;
67         char *lang;
68 } license_x;
69
70 typedef struct condition_x {
71         char *name;
72         char *text;
73 } condition_x;
74
75 typedef struct notification_x {
76         char *name;
77         char *text;
78 } notification_x;
79
80 typedef struct appcontrol_x {
81         char *operation;
82         char *uri;
83         char *mime;
84         char *visibility;
85         char *id;
86         GList *privileges;
87 } appcontrol_x;
88
89 typedef struct compatibility_x {
90         char *name;
91         char *text;
92 } compatibility_x;
93
94 typedef struct datacontrol_x {
95         char *providerid;
96         char *access;
97         char *type;
98         char *trusted;
99         GList *privileges;
100 } datacontrol_x;
101
102 typedef struct splashscreen_x {
103         char *src;
104         char *type;
105         char *dpi;
106         char *orientation;
107         char *indicatordisplay;
108         char *operation;
109         char *color_depth;
110 } splashscreen_x;
111
112 typedef struct privilege_x {
113         char *type;
114         char *value;
115 } privilege_x;
116
117 typedef struct appdefined_privilege_x {
118         char *type;
119         char *value;
120         char *license;
121 } appdefined_privilege_x;
122
123 typedef struct dependency_x {
124         char *depends_on;
125         char *type;
126         char *required_version;
127 } dependency_x;
128
129 typedef struct application_x {
130         char *appid;    /*attr*/
131         char *exec;     /*attr*/
132         char *nodisplay;        /*attr, default: "false"*/
133         char *multiple; /*attr, default: "false"*/
134         char *taskmanage;       /*attr, default: "true"*/
135         char *type;     /*attr*/
136         char *categories;       /*attr*/
137         char *extraid;  /*attr*/
138         char *hwacceleration;   /*attr, default: "default"*/
139         char *screenreader;     /*attr, default: "use-system-setting"*/
140         char *mainapp;  /*attr, default: "false"*/
141         char *package;  /*set from package_x*/
142         char *recentimage;      /*attr, default: "false"*/
143         char *launchcondition;  /*attr, default: "false"*/
144         char *indicatordisplay; /*attr, default: "true"*/
145         char *portraitimg;      /*attr*/
146         char *landscapeimg;     /*attr*/
147         char *effectimage_type; /*attr, default: "image"*/
148         char *guestmode_visibility;     /*attr, default: "true"*/
149         char *component;        /*no xml part*/
150         char *permission_type;  /*attr, default: "normal"*/
151         char *component_type;   /*attr, default: "uiapp"*/
152         char *preload;  /*no xml part*/
153         char *submode;  /*attr, default: "false"*/
154         char *submode_mainid;   /*attr, default: "false"*/
155         char *process_pool;     /*attr, default: "false"*/
156         char *installed_storage;
157         char *autorestart;      /*attr, default: "false"*/
158         char *onboot;   /*attr, default: "false"*/
159         char *support_disable;  /*set from package_x*/
160         char *ui_gadget;        /*attr, default: "false"*/
161         char *launch_mode;      /*attr, default: "single"*/
162         char *support_ambient;  /*attr, default: "false"*/
163         char *setup_appid;      /*attr*/
164         char *alias_appid;      /*attr*/
165         char *effective_appid;  /*attr*/
166         char *package_type;     /*set from package_x*/
167         char *tep_name; /*set from package_x*/
168         char *zip_mount_file;   /*set from package_x*/
169         char *root_path;        /*set from package_x*/
170         char *api_version;      /*set from package_x*/
171         char *for_all_users; /**< Flag that indicates if the package is available for everyone or for current user only, no xml part*/
172         char *is_disabled; /**< Flag that indicates if the application is disabled or not, no xml part*/
173         char *splash_screen_display; /*attr, default: "true"*/
174         char *external_path; /**< external storage path if exists, no xml part*/
175         char *package_system; /*set from package_x*/
176         char *removable; /*set from package_x*/
177         char *package_installed_time; /*installed time after finishing of installation*/
178         char *support_mode; /*attr*/
179         GList *label;   /*element*/
180         GList *icon;    /*element*/
181         GList *image;   /*element*/
182         GList *category; /*element*/
183         GList *metadata;        /*element*/
184         GList *permission;      /*element*/
185         GList *launchconditions;        /*element*/
186         GList *notification;    /*element*/
187         GList *datashare;       /*element*/
188         GList *datacontrol; /*element*/
189         GList *background_category; /*element*/
190         GList *appcontrol; /*element*/
191         GList *splashscreens; /*element*/
192 } application_x;
193
194 typedef struct package_x {
195         char *for_all_users;            /**< Flag that indicates if the package is available for everyone or for current user only, no xml part*/
196         char *package;          /**< package name, attr*/
197         char *version;          /**< package version, attr*/
198         char *installlocation;          /**< package install location, attr, default: "internal-only"*/
199         char *ns;               /**<name space, attr*/
200         char *removable;                /**< package removable flag, no xml part*/
201         char *preload;          /**< package preload flag, no xml part*/
202         char *readonly;         /**< package readonly flag, no xml part*/
203         char *update;                   /**< package update flag, no xml part*/
204         char *appsetting;               /**< package app setting flag, attr, default: "false"*/
205         char *system;           /**< package system flag, no xml part*/
206         char *type;             /**< package type, attr*/
207         char *package_size;             /**< package size for external installation, attr*/
208         char *installed_time;           /**< installed time after finishing of installation, no xml part*/
209         char *installed_storage;                /**< package currently installed storage, no xml part*/
210         char *storeclient_id;           /**< id of store client for installed package, attr*/
211         char *mainapp_id;               /**< app id of main application, no xml part*/
212         char *package_url;              /**< app id of main application, attr*/
213         char *root_path;                /**< package root path, attr*/
214         char *csc_path;         /**< package csc path, attr*/
215         char *nodisplay_setting;                /**< package no display setting menu, attr, default: "false"*/
216         char *support_mode; /**< package support mode, attr*/
217         char *support_disable;          /**< package support disable flag, attr, default: "false"*/
218         char *api_version;              /**< minimum version of API package using, attr, default: patch_version trimmed version from tizen_full_version*/
219         char *tep_name; /*no xml part*/
220         char *zip_mount_file;   /*no xml part*/
221         char *backend_installer;                /**< package backend installer, attr*/
222         char *external_path; /**< external storage path if exists, no xml part*/
223         char *use_system_certs; /**< use system certificates, attr*/
224         GList *icon;            /**< package icon, element*/
225         GList *label;           /**< package label, element*/
226         GList *author;          /**< package author, element*/
227         GList *description;             /**< package description, element*/
228         GList *license;         /**< package license, no xml part*/
229         GList *privileges;      /**< package privileges, element*/
230         GList *appdefined_privileges;   /**<package appdefined privileges, element*/
231         GList *provides_appdefined_privileges;  /**<package providing appdefined privileges, element*/
232         GList *application;             /**< package's application, element*/
233         GList *compatibility;           /**< package compatibility, element*/
234         GList *deviceprofile;           /**< package device profile, element*/
235         GList *dependencies;            /**< package dependencies, element*/
236 } package_x;
237
238 typedef struct updateinfo_x {
239         char *pkgid;
240         char *version;
241         int type;
242 } updateinfo_x;
243
244 typedef struct package_x manifest_x;
245
246 void pkgmgrinfo_basic_free_application(application_x *application);
247 void pkgmgrinfo_basic_free_package(package_x *package);
248
249 #ifdef __cplusplus
250 }
251 #endif /* __cplusplus */
252 #endif