tdm: check mutex lock status in tdm_display_destroy_private_output
[platform/core/uifw/libtdm.git] / src / tdm_config.h
index b743f93..a9ed0fd 100644 (file)
@@ -9,7 +9,7 @@
  *          Taeheon Kim <th908.kim@samsung.com>,
  *          YoungJun Cho <yj44.cho@samsung.com>,
  *          SooChan Lim <sc1.lim@samsung.com>,
- *          Boram Park <sc1.lim@samsung.com>
+ *          Boram Park <boram1288.park@samsung.com>
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the
@@ -49,17 +49,117 @@ extern "C" {
  * @brief The config header file for a frontend library
  */
 
-tdm_error
-tdm_config_init(void);
-void
-tdm_config_deinit(void);
+/**
+ * @brief Get the ini value with given key
+ * @details
+ * @param[in] key The given key
+ * @param[in] default_value The default value
+ * @return the value of given key if success. Otherwise, default_value.
+ * @see #tdm_config_get_string
+ */
+int
+tdm_config_get_int(const char *key, int default_value);
 
+/**
+ * @brief Get the ini value with given key
+ * @details
+ * @param[in] key The given key
+ * @param[in] default_value The default value
+ * @return the value of given key if success. Otherwise, default_value.
+ * @see #tdm_config_get_int
+ */
+const char *
+tdm_config_get_string(const char *key, const char *default_value);
+
+/**
+ * @brief Set the ini value with given key
+ * @details
+ * @param[in] key The given key
+ * @param[in] value The value
+ * @return TDM_ERROR_NONE if success. Otherwise, error value.
+ */
 tdm_error
 tdm_config_set_int(const char *key, int value);
+
+/**
+ * @brief Set the ini value with given key
+ * @details
+ * @param[in] key The given key
+ * @param[in] value The value
+ * @return TDM_ERROR_NONE if success. Otherwise, error value.
+ */
 tdm_error
 tdm_config_set_string(const char *key, const char *value);
 
 
+#define TDM_CONFIG_DELIM ", "
+
+/*** general keys ************************************************************/
+
+/* backends order list to load.
+ * default: libtdm-default.so
+ * ex) libtdm-default.so,libtdm-dummy.so
+ */
+#define TDM_CONFIG_KEY_GENERAL_BACKENDS           "general:backends"
+
+/* enable thd tdm thread. [0(disable), 1(enable)]
+ * default: 0
+ * ex) 1
+ */
+#define TDM_CONFIG_KEY_GENERAL_THREAD             "general:thread"
+
+/* enable the tdm commit-per-vblank functionality. [0(disable), 1(enable)]
+ * default: 0
+ * ex) 1
+ */
+#define TDM_CONFIG_KEY_GENERAL_COMMIT_PER_VBLANK  "general:commit_per_vblank"
+
+/* enable the tdm virtual output module. [0(disable), 1(enable)]
+ * default: 0
+ * ex) 1
+ */
+#define TDM_CONFIG_KEY_GENERAL_VIRTUAL_OUTPUT  "general:virtual_output"
+
+
+/*** debug keys **************************************************************/
+
+/* debugging module list. [0(disable), 1(enable)]
+ * default: 1
+ * ex) 0
+ */
+#define TDM_CONFIG_KEY_DEBUG_DLOG                 "debug:dlog"
+
+/* debugging module list. [none,all,buffer,thread,event,mutex,vblank,commit]
+ * default: none
+ * ex) mutex,vblank
+ */
+#define TDM_CONFIG_KEY_DEBUG_MODULE               "debug:module"
+
+/* debugging dump list. [none,current,all,layer,pp,capture,window]
+ * default: none
+ * ex) layer,capture
+ */
+#define TDM_CONFIG_KEY_DEBUG_DUMP                 "debug:dump"
+
+/* debugging log path. [{filepath}]
+ * default:
+ * ex) /var/tdm.log
+ */
+#define TDM_CONFIG_KEY_DEBUG_LOG_PATH             "debug:log_path"
+
+/* debugging log level. [1(ERR),2(WRN),3(INFO),4(DBG)]
+ * default: 3
+ * ex) 4
+ */
+#define TDM_CONFIG_KEY_DEBUG_LOG_LEVEL            "debug:log_level"
+
+/* debugging log level to assert. [0(NONE),1(ERR),2(WRN),3(INFO),4(DBG)]
+ * default: 0
+ * ex) 1
+ */
+#define TDM_CONFIG_KEY_DEBUG_ASSERT_LEVEL         "debug:assert_level"
+
+
 #ifdef __cplusplus
 }
 #endif