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_ELF_H__
25 #define __APPCORE_ELF_H__
30 * @brief This file contains APIs of the Appcore EFL library
34 * @addtogroup APPLICATION_FRAMEWORK
37 * @defgroup Appcore_EFL Appcore EFL
39 * @brief A base library for EFL application based on Appcore
44 * @addtogroup Appcore_EFL
49 #include <appcore-common.h>
57 * This is a main function for EFL application on SLP platform. \n
58 * Refer to programming guide for the details.
61 * To develop an application using EFL on this platform.
63 * @par Method of function operation:
64 * Initialize the EFL, internationalization, and notifications
65 * for receiving system events such as rotation, low battery, etc.\n
66 * And, start an ecore mainloop.
68 * @param[in] name Application name
69 * @param[in] argc A count of the arguments
70 * @param[in] argv An array of pointers to the strings which are those arguments
71 * @param[in] ops Appcore operations
73 * @return 0 on success, -1 on error (<I>errno</I> set)
76 * EALREADY - mainloop already started \n
77 * EINVAL - one of parameters is NULL \n
78 * ECANCELED - create() callback returns error (none zero value) \n
80 * @par Corner cases/exceptions:
81 * If <I>ops</I> has no callback function, this function just starts a mainloop.
83 * @par Known issues/bugs:
84 * If <I>errno</I> set another value, check the <I>dlog</I> message.
85 * This doesn't care internal <I>errno</I> set.
94 #include <appcore-efl.h>
96 static int _create(void *);
97 static int _reset(bundle *, void *);
99 int main(int argc, char *argv[])
103 struct appcore_ops ops = {
111 r = appcore_efl_main(name, &argc, &argv, &ops);
113 // add exception handling
114 perror("Appcore EFL main");
120 int appcore_efl_main(const char *name, int *argc, char ***argv,
121 struct appcore_ops *ops);
125 * This API sets system resource reclaiming.
128 * When this is not enabled, the application doesn't reclaim system resource.
130 * @param[in] enable Application name
132 * @return 0 on success, -1 on error (<I>errno</I> set)
142 #include <appcore-efl.h>
144 int _create(void *data)
149 r = appcore_set_system_resource_reclaiming(FALSE);
151 // add exception handling
152 perror("appcore_set_system_resource_reclaiming");
159 int appcore_set_system_resource_reclaiming(bool enable);
170 #endif /* __APPCORE_ELF_H__ */