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"
32 #include "appcore-common.h"
36 # define EXPORT_API __attribute__ ((visibility("default")))
40 # define _ERR(fmt, arg...) \
41 do { fprintf(stderr, "appcore: "fmt"\n", ##arg); } while (0)
43 # define _INFO(fmt, arg...) \
44 do { fprintf(stdout, fmt"\n", ##arg); } while (0)
46 # define _DBG(fmt, arg...) \
48 if (getenv("APPCORE_DEBUG")) { \
49 fprintf(stdout, fmt"\n", ##arg); \
53 # define _ERR(fmt, arg...) \
55 fprintf(stderr, "appcore: "fmt"\n", ##arg); \
58 # define _INFO(...) LOGI(__VA_ARGS__)
59 # define _DBG(...) LOGD(__VA_ARGS__)
62 #define _warn_if(expr, fmt, arg...) do { \
68 #define _ret_if(expr) do { \
74 #define _retv_if(expr, val) do { \
80 #define _retm_if(expr, fmt, arg...) do { \
87 #define _retvm_if(expr, val, fmt, arg...) do { \
95 * Appcore internal state
106 * Appcore internal event
124 * Appcore internal system event
137 * Appcore system event operation
140 int (*func) (void *, void *);
145 * Appcore internal structure
150 bool suspended_state;
153 const struct ui_ops *ops;
154 struct sys_op sops[SE_MAX];
158 * Appcore UI operation
162 void (*cb_app) (enum app_event evnt, void *data, bundle *b);
166 extern void update_lang(void);
167 extern int set_i18n(const char *domainname, const char *dirname);
168 void update_region(void);
172 extern int x_raise_win(pid_t pid);
173 extern int x_pause_win(pid_t pid);
176 /* extern void stack_trim(void);*/
178 int appcore_pause_rotation_cb(void);
179 int appcore_resume_rotation_cb(void);
181 struct ui_wm_rotate {
182 int (*set_rotation_cb) (int (*cb)(void *event_info, enum appcore_rm, void *), void *data);
183 int (*unset_rotation_cb) (void);
184 int (*get_rotation_state) (enum appcore_rm *curr);
185 int (*pause_rotation_cb) (void);
186 int (*resume_rotation_cb) (void);
188 int appcore_set_wm_rotation(struct ui_wm_rotate* wm_rotate);
190 void appcore_group_attach();
191 void appcore_group_lower();
192 unsigned int appcore_get_main_window(void);
194 unsigned int appcore_get_main_surface(void);
196 void appcore_get_app_core(struct appcore **ac);
198 #define ENV_START "APP_START_TIME"
200 #define MEMORY_FLUSH_ACTIVATE
202 #endif /* __APPCORE_INTERNAL_H__ */