summaryrefslogtreecommitdiff
path: root/tools/jsonhelpers.c
blob: 56cd85458a8f98ab35cad85f73c0d80f1c32b85f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include "jsonhelpers.h"

int JsonGetInteger(json_t *jNode, string name) {
	json_t *jInt = json_object_get(jNode, name.c_str());
	if (json_is_integer(jInt)) {
        return json_integer_value(jInt);
    }
    return 0;
}

float JsonGetFloat(json_t *jNode, string name) {
	json_t *jFloat = json_object_get(jNode, name.c_str());
	if (json_is_real(jFloat)) {
        return json_real_value(jFloat);
    }
    if (json_is_integer(jFloat)) {
        return json_integer_value(jFloat);
    }
    return 0.0;
}

string JsonGetString(json_t *jNode, string name) {
	json_t *jString = json_object_get(jNode, name.c_str());
	if (json_is_string(jString)) {
        return json_string_value(jString);
    }
    return "";
}

string FloatToString(float f) {
    stringstream sTemp;
    sTemp << f;
    return sTemp.str();
}

string IntToString(int i) {
    stringstream sTemp;
    sTemp << i;
    return sTemp.str();
}