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
48 #include <appcore-common.h>
56 * This is a main function for EFL application on SLP platform. \n
57 * Refer to programming guide for the details.
60 * To develop an application using EFL on this platform.
62 * @par Method of function operation:
63 * Initialize the EFL, internationalization, and notifications
64 * for receiving system events such as rotation, low battery, etc.\n
65 * And, start an ecore mainloop.
67 * @param[in] name Application name
68 * @param[in] argc A count of the arguments
69 * @param[in] argv An array of pointers to the strings which are those arguments
70 * @param[in] ops Appcore operations
72 * @return 0 on success, -1 on error (<I>errno</I> set)
75 * EALREADY - mainloop already started \n
76 * EINVAL - one of parameters is NULL \n
77 * ECANCELED - create() callback returns error (none zero value) \n
79 * @par Corner cases/exceptions:
80 * If <I>ops</I> has no callback function, this function just starts a mainloop.
82 * @par Known issues/bugs:
83 * If <I>errno</I> set another value, check the <I>dlog</I> message.
84 * This doesn't care internal <I>errno</I> set.
93 #include <appcore-efl.h>
95 static int _create(void *);
96 static int _reset(bundle *, void *);
98 int main(int argc, char *argv[])
102 struct appcore_ops ops = {
110 r = appcore_efl_main(name, &argc, &argv, &ops);
112 // add exception handling
113 perror("Appcore EFL main");
119 int appcore_efl_main(const char *name, int *argc, char ***argv,
120 struct appcore_ops *ops);
131 #endif /* __APPCORE_ELF_H__ */