FlightGear next
jsonprops.hxx
Go to the documentation of this file.
1// jsonprops.hxx -- convert properties from/to json
2//
3// Written by Torsten Dreyer, started April 2014.
4//
5// Copyright (C) 2014 Torsten Dreyer
6//
7// This program is free software; you can redistribute it and/or
8// modify it under the terms of the GNU General Public License as
9// published by the Free Software Foundation; either version 2 of the
10// License, or (at your option) any later version.
11//
12// This program is distributed in the hope that it will be useful, but
13// WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15// General Public License for more details.
16//
17// You should have received a copy of the GNU General Public License
18// along with this program; if not, write to the Free Software
19// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20
21#ifndef JSONPROPS_HXX_
22#define JSONPROPS_HXX_
23
24#include <simgear/props/props.hxx>
25#include <cJSON.h>
26#include <string>
27
28namespace flightgear {
29namespace http {
30
31class JSON {
32public:
33 static cJSON * toJson(SGPropertyNode_ptr n, int depth, double timestamp = -1.0 );
34 static std::string toJsonString(bool indent, SGPropertyNode_ptr n, int depth, double timestamp = -1.0 );
35
36 static const char * getPropertyTypeString(simgear::props::Type type);
37 static cJSON * valueToJson(SGPropertyNode_ptr n);
38
39 static void toProp(cJSON * json, SGPropertyNode_ptr base);
40 static void addChildrenToProp(cJSON * json, SGPropertyNode_ptr base);
41};
42
43} // namespace http
44} // namespace flightgear
45
46#endif /* JSONPROPS_HXX_ */
static const char * getPropertyTypeString(simgear::props::Type type)
Definition jsonprops.cxx:29
static std::string toJsonString(bool indent, SGPropertyNode_ptr n, int depth, double timestamp=-1.0)
static void toProp(cJSON *json, SGPropertyNode_ptr base)
static cJSON * valueToJson(SGPropertyNode_ptr n)
Definition jsonprops.cxx:73
static cJSON * toJson(SGPropertyNode_ptr n, int depth, double timestamp=-1.0)
Definition jsonprops.cxx:95
static void addChildrenToProp(cJSON *json, SGPropertyNode_ptr base)
FlightPlan.hxx - defines a full flight-plan object, including departure, cruise, arrival information ...
Definition Addon.cxx:53