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...) fprintf(stderr, "appcore: "fmt"\n", ##arg)
41 #define _INFO(fmt, arg...) fprintf(stdout, fmt"\n", ##arg)
42 #define _DBG(fmt, arg...) \
44 if (getenv("APPCORE_DEBUG")) { \
45 fprintf(stdout, fmt"\n", ##arg); \
49 #define _ERR(fmt, arg...) LOGE(fmt, ##arg)
50 #define _INFO(...) LOGI(__VA_ARGS__)
51 #define _DBG(...) LOGD(__VA_ARGS__)
54 #define _warn_if(expr, fmt, arg...) do { \
60 #define _ret_if(expr) do { \
66 #define _retv_if(expr, val) do { \
72 #define _retm_if(expr, fmt, arg...) do { \
79 #define _retvm_if(expr, val, fmt, arg...) do { \
87 * Appcore internal state
98 * Appcore internal event
117 * Appcore internal system event
131 * Appcore system event operation
134 int (*func) (void *, void *);
139 * Appcore internal structure
144 bool suspended_state;
147 const struct ui_ops *ops;
148 struct sys_op sops[SE_MAX];
152 * Appcore UI operation
156 void (*cb_app) (enum app_event evnt, void *data, bundle *b);
160 extern void update_lang(void);
161 extern int set_i18n(const char *domainname, const char *dirname);
162 void update_region(void);
165 /* extern void stack_trim(void);*/
167 int appcore_pause_rotation_cb(void);
168 int appcore_resume_rotation_cb(void);
170 struct ui_wm_rotate {
171 int (*set_rotation_cb) (int (*cb)(void *event_info, enum appcore_rm, void *), void *data);
172 int (*unset_rotation_cb) (void);
173 int (*get_rotation_state) (enum appcore_rm *curr);
174 int (*pause_rotation_cb) (void);
175 int (*resume_rotation_cb) (void);
177 int appcore_set_wm_rotation(struct ui_wm_rotate* wm_rotate);
179 void appcore_group_attach();
180 void appcore_group_lower();
181 unsigned int appcore_get_main_window(void);
182 unsigned int appcore_get_main_surface(void);
183 void appcore_get_app_core(struct appcore **ac);
185 #define ENV_START "APP_START_TIME"
187 #define MEMORY_FLUSH_ACTIVATE
190 TIZEN_PROFILE_UNKNOWN = 0,
191 TIZEN_PROFILE_MOBILE = 0x1,
192 TIZEN_PROFILE_WEARABLE = 0x2,
193 TIZEN_PROFILE_TV = 0x4,
194 TIZEN_PROFILE_IVI = 0x8,
195 TIZEN_PROFILE_COMMON = 0x10,
197 extern tizen_profile_t _get_tizen_profile();
199 #define _APPFW_FEATURE_BACKGROUND_MANAGEMENT (_get_tizen_profile() & (TIZEN_PROFILE_WEARABLE | TIZEN_PROFILE_MOBILE))
201 #endif /* __APPCORE_INTERNAL_H__ */