correct email address
[platform/core/uifw/libtdm.git] / include / tdm_config.h
1 /**************************************************************************
2  *
3  * libtdm
4  *
5  * Copyright 2015 Samsung Electronics co., Ltd. All Rights Reserved.
6  *
7  * Contact: Eunchul Kim <chulspro.kim@samsung.com>,
8  *          JinYoung Jeon <jy0.jeon@samsung.com>,
9  *          Taeheon Kim <th908.kim@samsung.com>,
10  *          YoungJun Cho <yj44.cho@samsung.com>,
11  *          SooChan Lim <sc1.lim@samsung.com>,
12  *          Boram Park <boram1288.park@samsung.com>
13  *
14  * Permission is hereby granted, free of charge, to any person obtaining a
15  * copy of this software and associated documentation files (the
16  * "Software"), to deal in the Software without restriction, including
17  * without limitation the rights to use, copy, modify, merge, publish,
18  * distribute, sub license, and/or sell copies of the Software, and to
19  * permit persons to whom the Software is furnished to do so, subject to
20  * the following conditions:
21  *
22  * The above copyright notice and this permission notice (including the
23  * next paragraph) shall be included in all copies or substantial portions
24  * of the Software.
25  *
26  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
27  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
28  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.
29  * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR
30  * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
31  * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
32  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
33  *
34 **************************************************************************/
35
36 #ifndef _TDM_CONFIG_H_
37 #define _TDM_CONFIG_H_
38
39 #include "tdm_common.h"
40
41 #ifdef __cplusplus
42 extern "C" {
43 #endif
44
45 #include "tdm_common.h"
46
47 /**
48  * @file tdm_config.h
49  * @brief The config header file for a frontend library
50  */
51
52 tdm_error
53 tdm_config_init(void);
54 void
55 tdm_config_deinit(void);
56
57 tdm_error
58 tdm_config_set_int(const char *key, int value);
59 tdm_error
60 tdm_config_set_string(const char *key, const char *value);
61
62
63 #define TDM_CONFIG_DELIM ", "
64
65 /*** general keys ************************************************************/
66
67 /* backends order list to load.
68  * default: libtdm-default.so
69  * ex) libtdm-default.so,libtdm-dummy.so
70  */
71 #define TDM_CONFIG_KEY_GENERAL_BACKENDS           "general:backends"
72
73 /* enable thd tdm thread. [0(disable), 1(enable)]
74  * default: 0
75  * ex) 1
76  */
77 #define TDM_CONFIG_KEY_GENERAL_THREAD             "general:thread"
78
79 /* enable the tdm commit-per-vblank functionality. [0(disable), 1(enable)]
80  * default: 0
81  * ex) 1
82  */
83 #define TDM_CONFIG_KEY_GENERAL_COMMIT_PER_VBLANK  "general:commit_per_vblank"
84
85
86 /*** debug keys **************************************************************/
87
88 /* debugging module list. [0(disable), 1(enable)]
89  * default: 1
90  * ex) 0
91  */
92 #define TDM_CONFIG_KEY_DEBUG_DLOG                 "debug:dlog"
93
94 /* debugging module list. [none,all,buffer,thread,event,mutex,vblank,commit]
95  * default: none
96  * ex) mutex,vblank
97  */
98 #define TDM_CONFIG_KEY_DEBUG_MODULE               "debug:module"
99
100 /* debugging dump list. [none,current,all,layer,pp,capture,window]
101  * default: none
102  * ex) layer,capture
103  */
104 #define TDM_CONFIG_KEY_DEBUG_DUMP                 "debug:dump"
105
106 /* debugging log path. [{filepath}]
107  * default:
108  * ex) /var/tdm.log
109  */
110 #define TDM_CONFIG_KEY_DEBUG_LOG_PATH             "debug:log_path"
111
112 /* debugging log level. [1(ERR),2(WRN),3(INFO),4(DBG)]
113  * default: 3
114  * ex) 4
115  */
116 #define TDM_CONFIG_KEY_DEBUG_LOG_LEVEL            "debug:log_level"
117
118 /* debugging log level to assert. [0(NONE),1(ERR),2(WRN),3(INFO),4(DBG)]
119  * default: 0
120  * ex) 1
121  */
122 #define TDM_CONFIG_KEY_DEBUG_ASSERT_LEVEL         "debug:assert_level"
123
124
125 #ifdef __cplusplus
126 }
127 #endif
128
129 #endif /* _TDM_CONFIG_H_ */