return r;
}
+EXPORT int vconf_set_dbl(const char *key, double dblval)
+{
+ int r;
+ struct buxton_value *val;
+
+ if (!key) {
+ errno = EINVAL;
+ return -1;
+ }
+
+ val = buxton_value_create_double(dblval);
+ if (!val)
+ return -1;
+
+ r = vconf_set(key, val);
+
+ buxton_value_free(val);
+
+ return r;
+}
+
static int vconf_get(const char *key, enum buxton_key_type type,
struct buxton_value **val)
{
return str;
}
+EXPORT int vconf_get_dbl(const char *key, double *dblval)
+{
+ int r;
+ struct buxton_value *val;
+ double d;
+
+ if (!key || !dblval) {
+ errno = EINVAL;
+ return -1;
+ }
+
+ r = vconf_get(key, BUXTON_TYPE_DOUBLE, &val);
+ if (r == -1)
+ return -1;
+
+ r = buxton_value_get_double(val, &d);
+
+ buxton_value_free(val);
+
+ if (r == -1)
+ return -1;
+
+ *dblval = d;
+
+ return 0;
+}
+
int vconf_set_str(const char *key, const char *strval);
/**
+ * Set a double-precision float value
+ *
+ * @param[in] key the name of key
+ * @param[in] dblval a double value
+ * @return 0 on success, -1 on error
+ * @deprecated use buxton APIs
+ */
+int vconf_set_dbl(const char *key, double dblval);
+
+/**
* Get an integer value
*
* @param[in] key the name of key
*/
char *vconf_get_str(const char *key);
+/**
+ * Get a double-precision float value
+ *
+ * @param[in] key the name of key
+ * @param[out] dblval a pointer to a double value to be set
+ * @return 0 on success, -1 on error
+ * @deprecated use buxton APIs
+ */
+int vconf_get_dbl(const char *key, double *dblval);
+
#ifdef __cplusplus
}
#endif