@@ -56,10 +56,41 @@ void ConfigEntry::reset() {
56
56
// ToDo: Remove all child entries (children = NULL;)
57
57
}
58
58
59
+ long ConfigEntry::getLong (const char *key, long defaultValue) {
60
+ char cstr[16 ];
61
+ get (key).getCValue (cstr);
62
+ if (strlen (cstr) == 0 ) {
63
+ get (key).setValue (String (defaultValue));
64
+ return defaultValue;
65
+ }
66
+ return atol (cstr);
67
+ }
68
+
59
69
int ConfigEntry::getInt (const char *key, int defaultValue) {
60
70
char cstr[16 ];
61
- itoa (defaultValue, cstr, 10 );
62
- return getString (key, cstr).toInt ();
71
+ get (key).getCValue (cstr);
72
+ if (strlen (cstr) == 0 ) {
73
+ get (key).setValue (String (defaultValue));
74
+ return defaultValue;
75
+ }
76
+ return atoi (cstr);
77
+ }
78
+
79
+ double ConfigEntry::getDouble (const char *key, double defaultValue) {
80
+ char cstr[16 ];
81
+ get (key).getCValue (cstr);
82
+ if (strlen (cstr) == 0 ) {
83
+ get (key).setValue (String (defaultValue));
84
+ return defaultValue;
85
+ }
86
+ return atof (cstr);
87
+ }
88
+ void ConfigEntry::getCString (const char *key, const char *defaultValue, char *destination) {
89
+ get (key).getCValue (destination);
90
+ if (strlen (destination) == 0 ) {
91
+ get (key).setValue (defaultValue);
92
+ strcpy (destination, defaultValue);
93
+ }
63
94
}
64
95
65
96
String ConfigEntry::getString (const char *key, const char *defaultValue) {
0 commit comments