ae8c1d9f2f2eeb2f93fbbf8570e3b8851d519bbb
[framework/appfw/aul-1.git] / am_daemon / amd_status.h
1 /*
2  *  aul
3  *
4  * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
5  *
6  * Contact: Jayoun Lee <airjany@samsung.com>, Sewook Park <sewook7.park@samsung.com>, Jaeho Lee <jaeho81.lee@samsung.com>
7  *
8  * Licensed under the Apache License, Version 2.0 (the "License");
9  * you may not use this file except in compliance with the License.
10  * You may obtain a copy of the License at
11  *
12  * http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing, software
15  * distributed under the License is distributed on an "AS IS" BASIS,
16  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  * See the License for the specific language governing permissions and
18  * limitations under the License.
19  *
20  */
21
22 #ifndef __AUL_AMD_STATUS_H_
23 #define __AUL_AMD_STATUS_H_
24
25 #include <glib.h>
26
27 int _status_add_app_info_list(const char *appid, const char *app_path,
28         const char *caller, int pid, int pad_pid, int is_subapp);
29 int _status_update_app_info_list(int pid, int status);
30 int _status_update_app_info_caller_pid(int pid, int caller_pid);
31 int _status_get_app_info_last_caller_pid(int pid);
32 int _status_remove_app_info_list(int pid);
33 int _status_get_app_info_status(int pid);
34 int _status_app_is_running(const char *appid);
35 void _status_find_service_apps(int pid, enum app_status, void (*send_event_to_svc_core) (int));
36 void _status_check_service_only(int pid, void (*send_event_to_svc_core) (int));
37 char* _status_app_get_appid_bypid(int pid);
38
39 int _status_send_running_appinfo(int fd);
40 int _status_app_is_running_v2(const char *appid);
41 int _status_app_is_running_v2_cached(const char *appid);
42 int _status_app_is_running_from_cache(const char *appid);
43 int _status_send_running_appinfo_v2(int fd);
44 int _status_get_pkgname_bypid(int pid, char *pkgname, int len);
45 int _status_get_appid_bypid(int fd, int pid);
46 int _status_get_pkgid_bypid(int fd, int pid);
47 int _status_get_cmdline(int fd, int pid);
48 int _status_send_group_info(int fd);
49 char* _status_get_caller_by_appid(const char *appid);
50 int _status_get_cooldown_status(void);
51 int _status_set_exec_label(int pid, const char *exec_label);
52 const char* _status_get_exec_label(int pid);
53 int _status_set_caller_exec_label(int pid, const char *exec_label);
54 int _status_add_shared_info(int pid, const char *exec_label, char **paths);
55 int _status_clear_shared_info_list(int pid);
56 GList* _status_get_shared_info_list(int pid);
57
58 gboolean _status_check_window_ready(void);
59
60 #ifdef _APPFW_FEATURE_AMD_MODULE_LOG
61 int _status_log_save(const char *tag, const char *message);
62 int _status_log_write(void);
63 #endif
64
65 //TODO : remove
66
67 typedef struct _item_pkt_t {
68         int pid;
69         char appid[512];
70 } item_pkt_t;
71
72 #ifdef _APPFW_FEATURE_BG_PROCESS_LIMIT
73 gboolean __add_item_running_list(gpointer user_data);
74 #endif
75
76 enum cooldown_status_val {
77         COOLDOWN_RELEASE,
78         COOLDOWN_WARNING,
79         COOLDOWN_LIMIT,
80 };
81
82 typedef struct _shared_info_t {
83         char *owner_exec_label;
84         char **paths;
85 } shared_info_t;
86
87 #endif
88