4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Jayoun Lee <airjany@samsung.com>, Sewook Park <sewook7.park@samsung.com>, Jaeho Lee <jaeho81.lee@samsung.com>
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
12 * http://www.apache.org/licenses/LICENSE-2.0
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.
24 #ifndef __APPCORE_INTERNAL_H__
25 #define __APPCORE_INTERNAL_H__
27 #define LOG_TAG "APP_CORE"
33 #include "appcore-common.h"
37 # define EXPORT_API __attribute__ ((visibility("default")))
40 # define _ERR(fmt, arg...) LOGE(fmt, ##arg)
41 # define _WARN(fmt, arg...) LOGW(fmt, ##arg)
42 # define _INFO(...) LOGI(__VA_ARGS__)
43 # define _DBG(...) LOGD(__VA_ARGS__)
45 #define _warn_if(expr, fmt, arg...) do { \
51 #define _ret_if(expr) do { \
57 #define _retv_if(expr, val) do { \
63 #define _retm_if(expr, fmt, arg...) do { \
70 #define _retvm_if(expr, val, fmt, arg...) do { \
77 #define goto_if(expr, val) do { \
79 _ERR("(%s) -> goto", #expr); \
84 #define break_if(expr) { \
86 _ERR("(%s) -> break", #expr); \
91 #define continue_if(expr) { \
93 _ERR("(%s) -> continue", #expr); \
99 * Appcore internal state
110 * Appcore internal event
126 * Appcore internal system event
139 * Appcore system event operation
142 int (*func) (void *, void *);
147 * Appcore internal structure
152 bool suspended_state;
155 const struct ui_ops *ops;
156 struct sys_op sops[SE_MAX];
160 * Appcore UI operation
164 void (*cb_app) (enum app_event evnt, void *data, bundle *b);
168 extern void update_lang(void);
169 extern int set_i18n(const char *domainname, const char *dirname);
170 void update_region(void);
174 extern int x_raise_win(pid_t pid);
175 extern int x_pause_win(pid_t pid);
178 /* extern void stack_trim(void);*/
180 int appcore_pause_rotation_cb(void);
181 int appcore_resume_rotation_cb(void);
183 struct ui_wm_rotate {
184 int (*set_rotation_cb) (int (*cb) (void *event_info, enum appcore_rm, void *), void *data);
185 int (*unset_rotation_cb) (void);
186 int (*get_rotation_state) (enum appcore_rm *curr);
187 int (*pause_rotation_cb) (void);
188 int (*resume_rotation_cb) (void);
190 int appcore_set_wm_rotation(struct ui_wm_rotate* wm_rotate);
192 void appcore_group_reset(bundle *b);
193 void appcore_group_attach();
194 void appcore_group_lower();
195 unsigned int appcore_get_main_window();
197 int _appcore_request_to_suspend(int pid);
198 int _appcore_init_suspend_dbus_handler(void *data);
199 int _appcore_fini_suspend_dbus_handler(void *data);
201 #define ENV_START "APP_START_TIME"
203 #define MEMORY_FLUSH_ACTIVATE
205 #define APPID_MAX 256
207 #endif /* __APPCORE_INTERNAL_H__ */