3 #include <jsoncpp/json/json.h>
11 std::chrono::high_resolution_clock::time_point TSTART_;
12 std::chrono::high_resolution_clock::time_point TEND_;
13 inline void TSTART() { TSTART_ = std::chrono::high_resolution_clock::now(); }
14 inline void TEND() { TEND_ = std::chrono::high_resolution_clock::now(); }
17 std::chrono::duration<double> DT_;
18 DT_ = std::chrono::duration_cast<std::chrono::duration<double>>(
23 inline void TPRINT(const char *what)
25 std::cerr << what << ": " << TDIFF() << std::endl;
32 Json::Value jvi; // JSON input
33 Json::Value jvo; // JSON output
37 jvi["slot"][0][0][0].asDouble(),
38 jvi["slot"][0][0][1].asDouble(),
40 jvi["slot"][0][1][0].asDouble(),
41 jvi["slot"][0][1][1].asDouble(),
43 jvi["slot"][0][2][0].asDouble(),
44 jvi["slot"][0][2][1].asDouble(),
46 jvi["slot"][0][3][0].asDouble(),
47 jvi["slot"][0][3][1].asDouble()
52 jvi["goal"][0] = psp.cc().x();
53 jvi["goal"][1] = psp.cc().y();
54 jvi["goal"][2] = psp.cc().h();
55 unsigned int icnt = 0;
56 for (auto &i: psp.possible_goals()) {
57 jvi["goals"][icnt][0] = i.x();
58 jvi["goals"][icnt][1] = i.y();
59 jvi["goals"][icnt][2] = i.h();
62 jvi["goals"][icnt][0] = psp.cc().x();
63 jvi["goals"][icnt][1] = psp.cc().y();
64 jvi["goals"][icnt][2] = psp.cc().h();
72 jvo["slot"] = jvi["slot"];
73 std::cout << jvo << std::endl;