diff --git a/core/dap_config.c b/core/dap_config.c index 7e788a86de986654749f9d2a4c1e1df254e12b47..7ae3f11338f43d277169366797c72d9cba436907 100755 --- a/core/dap_config.c +++ b/core/dap_config.c @@ -9,6 +9,8 @@ #define LOG_TAG "dap_config" +dap_config_t * g_config = NULL; + /** * @brief The dap_config_item struct */ @@ -336,6 +338,18 @@ int32_t dap_config_get_item_int32(dap_config_t * a_config, const char * a_sectio return atoi(dap_config_get_item_str(a_config,a_section_path,a_item_name)); } +/** + * @brief dap_config_get_item_int64 + * @param a_config + * @param a_section_path + * @param a_item_name + * @return + */ +int64_t dap_config_get_item_int64(dap_config_t * a_config, const char * a_section_path, const char * a_item_name) +{ + return atoll(dap_config_get_item_str(a_config,a_section_path,a_item_name)); +} + /** * @brief dap_config_get_item_uint16 * @param a_config @@ -377,6 +391,20 @@ uint16_t dap_config_get_item_uint16_default(dap_config_t * a_config, const char return l_str_ret? (uint16_t) atoi(l_str_ret):a_default; } +/** + * @brief dap_config_get_item_int64_default + * @param a_config + * @param a_section_path + * @param a_item_name + * @param a_default + * @return + */ +int64_t dap_config_get_item_int64_default(dap_config_t * a_config, const char * a_section_path, const char * a_item_name, int64_t a_default) +{ + const char * l_str_ret = dap_config_get_item_str(a_config,a_section_path,a_item_name); + return l_str_ret? (int64_t) atoll(l_str_ret):a_default; +} + /** * @brief dap_config_get_item Get the configuration as a item diff --git a/core/dap_config.h b/core/dap_config.h index 46297c726616f0706f072cf99016b55fc6187016..c07b5db1cb8c4df4e57d0be7117912ba56b0e2e5 100755 --- a/core/dap_config.h +++ b/core/dap_config.h @@ -50,6 +50,10 @@ uint16_t dap_config_get_item_uint16_default(dap_config_t * a_config, const char int32_t dap_config_get_item_int32(dap_config_t * a_config, const char * a_section_path, const char * a_item_name); int32_t dap_config_get_item_int32_default(dap_config_t * a_config, const char * a_section_path, const char * a_item_name, int32_t a_default); + +int64_t dap_config_get_item_int64(dap_config_t * a_config, const char * a_section_path, const char * a_item_name); +int64_t dap_config_get_item_int64_default(dap_config_t * a_config, const char * a_section_path, const char * a_item_name, int64_t a_default); + const char * dap_config_get_item_str(dap_config_t * a_config, const char * a_section_path, const char * a_item_name); const char * dap_config_get_item_str_default(dap_config_t * a_config, const char * a_section_path, const char * a_item_name, const char * a_value_default); char** dap_config_get_array_str(dap_config_t * a_config, const char * a_section_path, @@ -61,6 +65,9 @@ bool dap_config_get_item_bool_default(dap_config_t * a_config, const char * a_se double dap_config_get_item_double(dap_config_t * a_config, const char * a_section_path, const char * a_item_name); double dap_config_get_item_double_default(dap_config_t * a_config, const char * a_section_path, const char * a_item_name, double a_default); +extern dap_config_t * g_config; + + #ifdef __cplusplus } #endif diff --git a/core/dap_math_ops.h b/core/dap_math_ops.h index 1f13c9c435eedb12b7a1299b9f0d38cf7908ce8c..993939f854823d9d0dc1f2d91f4c120d246637ef 100755 --- a/core/dap_math_ops.h +++ b/core/dap_math_ops.h @@ -9,6 +9,12 @@ #define DAP_GLOBAL_IS_INT128 typedef __int128 _dap_int128_t; +#if !defined (int128_t) +typedef __int128 int128_t; +#endif +#if !defined (uint128_t) +typedef unsigned __int128 uint128_t; +#endif #endif #endif