aea74ddec727802240af56ccb12f027944e393ef
[platform/core/security/privacy-manager.git] / client / inc / privacy_manager_client.h
1 /*\r
2  * Copyright (c) 2013 Samsung Electronics Co., Ltd All Rights Reserved\r
3  *\r
4  * Licensed under the Apache License, Version 2.0 (the License);\r
5  * you may not use this file except in compliance with the License.\r
6  * You may obtain a copy of the License at\r
7  *\r
8  * http://www.apache.org/licenses/LICENSE-2.0\r
9  *\r
10  * Unless required by applicable law or agreed to in writing, software\r
11  * distributed under the License is distributed on an AS IS BASIS,\r
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
13  * See the License for the specific language governing permissions and\r
14  * limitations under the License. \r
15  */\r
16 \r
17 #ifndef _PRIVACY_MANAGER_CLIENT_H\r
18 #define _PRIVACY_MANAGER_CLIENT_H\r
19 \r
20 #include <privacy_info_client.h>\r
21 #include <privacy_manager_client_types.h>\r
22 \r
23 #ifdef __cplusplus\r
24 extern "C" {\r
25 #endif\r
26 \r
27 typedef bool (*privacy_manager_client_privacy_packages_cb) (const char *package_id, void* user_data);\r
28 typedef bool (*privacy_manager_client_privacy_info_cb) (privacy_info_client_s* privacy_info, void* user_data);\r
29 typedef bool (*privacy_manager_client_all_privacy_info_cb) (privacy_info_client_s* privacy_info, void* user_data);\r
30 typedef bool (*privacy_manager_client_packages_by_privacy_cb) (const char *package_id, bool is_enabled, void* user_data);\r
31 \r
32 EXTERN_API int privacy_manager_client_install_privacy(const char *package_id, const char** privacy_list);\r
33 EXTERN_API int privacy_manager_client_uninstall_privacy(const char *package_id);\r
34 EXTERN_API int privacy_manager_client_uninstall_privacy_by_server(const char *package_id);\r
35 EXTERN_API int privacy_manager_client_foreach_privacy_packages(privacy_manager_client_privacy_packages_cb callback, void *user_data);\r
36 EXTERN_API int privacy_manager_client_foreach_get_privacy_info(const char *package_id, privacy_manager_client_privacy_info_cb callback, void* user_data);\r
37 EXTERN_API int privacy_manager_client_set_package_privacy(const char *package_id, const char *privacy_id, bool enable);\r
38 \r
39 EXTERN_API int privacy_manager_client_check_user_consented(const char *package_id, bool *consented);\r
40 EXTERN_API int privacy_manager_client_set_user_consented(const char *package_id, bool consented);\r
41 \r
42 EXTERN_API int privacy_manager_client_foreach_all_privacy(privacy_manager_client_all_privacy_info_cb callback, void* user_data);\r
43 EXTERN_API int privacy_manager_client_foreach_package_list_by_privacy(const char *privacy_id, privacy_manager_client_packages_by_privacy_cb callback, void* user_data);\r
44 \r
45 #ifdef __cplusplus\r
46 }\r
47 #endif\r
48 \r
49 \r
50 #endif //__TIZEN_PRIVACYMGR_PRIVACY_MANAGER_CLIENT_H\r
51 \r