apply FSL license
[pkgs/u/ui-gadget.git] / include / ui-gadget-engine.h
1 /*
2  * Copyright 2012  Samsung Electronics Co., Ltd
3  *
4  * Licensed under the Flora License, Version 1.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.tizenopensource.org/license
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17
18
19
20
21 #ifndef __UI_GADGET_ENGINE_H__
22 #define __UI_GADGET_ENGINE_H__
23
24 /**
25  * @defgroup    UI_Gadget_For_Developer Developer API Reference Guide
26  * @ingroup     UI_Gadget
27  * @brief       A engine to develop a UI gadget. Callees (UI gadgets) uses this engines and APIs. (callee -> caller)
28  *
29  * @section Header To Use Them:
30  * @code
31  * #include <ui-gadget-engine.h>
32  * @endcode
33  */
34
35 /**
36  * @addtogroup UI_Gadget_For_Developer
37  * @{
38  */
39
40 #include <bundle.h>
41 #include "ui-gadget.h"
42
43 #ifdef __cplusplus
44 extern "C" {
45 #endif
46
47 /**
48  * UI gadget engine operation type
49  * @see @ref lifecycle_sec
50  */
51 struct ug_engine_ops {
52         /** create operation */
53         void *(*create)(void *win, struct ui_gadget *ug, void(*hide_end_cb)(struct ui_gadget *ug));
54         /** destroy operation */
55         void (*destroy)(struct ui_gadget *ug, struct ui_gadget *fv_top);
56         /** reserved operations */
57         void *reserved[4];
58 };
59
60 #ifdef __cplusplus
61 }
62 #endif
63
64 /**
65  * @}
66  */
67
68 #endif /* __UI_GADGET_ENGINE_H__ */