json_conversions.h
Go to the documentation of this file.
1 /*
2  * This file is part of ArmarX.
3  *
4  * ArmarX is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  *
8  * ArmarX is distributed in the hope that it will be useful, but
9  * WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * @package ArmarXCore::core
17  * @author Christian R. G. Dreher <c.dreher@kit.edu>
18  * @date 2020
19  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20  * GNU General Public License
21  */
22 
23 
24 #pragma once
25 
26 
27 // Simox
28 #include <SimoxUtility/json.h>
29 
30 // ArmarX
31 #include <ArmarXCore/interface/core/PackagePath.h>
32 
33 namespace armarx::data
34 {
35  void
36  to_json(nlohmann::json& j, const PackagePath& pp)
37  {
38  j = nlohmann::json{{"package", pp.package}, {"path", pp.path}};
39  }
40 
41  void
42  from_json(const nlohmann::json& j, PackagePath& pp)
43  {
44  j.at("package").get_to(pp.package);
45  j.at("path").get_to(pp.path);
46  }
47 } // namespace armarx::data
armarx::data::from_json
void from_json(const nlohmann::json &j, PackagePath &pp)
Definition: json_conversions.h:42
armarx::data::to_json
void to_json(nlohmann::json &j, const PackagePath &pp)
Definition: json_conversions.h:36
armarx::data
Definition: json_conversions.h:33
armarx::PackagePath
Definition: PackagePath.h:52