aron_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 * @author Fabian Reister ( fabian dot reister at kit dot edu )
17 * @date 2022
18 * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19 * GNU General Public License
20 */
21
22#pragma once
23
25
27#include <armarx/navigation/safety_guard/aron/LaserBasedProximityParams.aron.generated.h>
28
29namespace armarx
30{
31 template <typename AronType, typename T>
32 T
33 fromAron(const ::armarx::aron::data::dto::DictPtr& dto)
34 {
35 static_assert(
36 std::is_base_of_v<armarx::aron::codegenerator::cpp::AronGeneratedClass, AronType>,
37 "AronType must be an ARON generated type");
38
39 const auto dtoConfig = AronType::FromAron(dto);
40
41 T config;
42 fromAron(dtoConfig, config);
43
44 return config;
45 }
46} // namespace armarx
47
49{
50
51 void fromAron(const arondto::ProximityFieldParams& dto, ProximityFieldParams& bo);
52 void toAron(arondto::ProximityFieldParams& dto, const ProximityFieldParams& bo);
53
54 void fromAron(const arondto::LaserBasedProximityParams& dto, LaserBasedProximityParams& bo);
55 void toAron(arondto::LaserBasedProximityParams& dto, const LaserBasedProximityParams& bo);
56
57 void fromAron(const arondto::LaserBasedProximityMode& dto, ProximityFieldParams::Mode& bo);
58 void toAron(arondto::LaserBasedProximityMode& dto, const ProximityFieldParams::Mode& bo);
59
60} // namespace armarx::navigation::safety_guard
This file is part of ArmarX.
Definition fwd.h:55
void fromAron(const arondto::ProximityFieldParams &dto, ProximityFieldParams &bo)
void toAron(arondto::ProximityFieldParams &dto, const ProximityFieldParams &bo)
This file offers overloads of toIce() and fromIce() functions for STL container types.
void fromAron(const arondto::PackagePath &dto, PackageFileLocation &bo)