Skip to content
Snippets Groups Projects
Commit 5cfb8354 authored by Fabian Reister's avatar Fabian Reister
Browse files

aron conversions for traj ctrl

parent 18260a42
No related branches found
No related tags found
No related merge requests found
Showing
with 232 additions and 43 deletions
...@@ -2,7 +2,11 @@ ...@@ -2,7 +2,11 @@
#include <RobotAPI/libraries/aron/common/aron_conversions.h> #include <RobotAPI/libraries/aron/common/aron_conversions.h>
#include <Navigation/libraries/global_planning/aron/GlobalPlannerParams.aron.generated.h> #include "Navigation/libraries/global_planning/GlobalPlanner.h"
#include "Navigation/libraries/global_planning/Point2Point.h"
#include "Navigation/libraries/global_planning/aron/GlobalPlannerParams.aron.generated.h"
#include "Navigation/libraries/global_planning/aron/Point2PointParams.aron.generated.h"
// #include "Navigation/libraries/global_planning/aron/AStarParams.aron.generated.h"
namespace armarx::nav::glob_plan::aron_conv namespace armarx::nav::glob_plan::aron_conv
{ {
......
/*
* This file is part of ArmarX.
*
* ArmarX is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* ArmarX is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @author Fabian Reister ( fabian dot reister at kit dot edu )
* @date 2021
* @copyright http://www.gnu.org/licenses/gpl-2.0.txt
* GNU General Public License
*/
#pragma once namespace armarx::nav::glob_plan
{
struct GlobalPlanner;
struct Point2PointParams;
#include "Navigation/libraries/global_planning/GlobalPlanner.h" namespace arondto
#include "Navigation/libraries/global_planning/Point2Point.h" {
// #include "Navigation/libraries/global_planning/AStar.h" struct GlobalPlannerParams;
#include "Navigation/libraries/global_planning/aron/GlobalPlannerParams.aron.generated.h" struct Point2PointParams;
#include "Navigation/libraries/global_planning/aron/Point2PointParams.aron.generated.h" } // namespace aron
// #include "Navigation/libraries/global_planning/aron/AStarParams.aron.generated.h" } // namespace armarx::nav::glob_plan
namespace armarx::nav::glob_plan::aron_conv namespace armarx::nav::glob_plan::aron_conv
{ {
void toAron(arondto::GlobalPlannerParams& dto, const GlobalPlanner& bo); void toAron(arondto::GlobalPlannerParams& dto, const GlobalPlanner& bo);
void fromAron(const arondto::GlobalPlannerParams& dto, GlobalPlanner& bo); void fromAron(const arondto::GlobalPlannerParams& dto, GlobalPlanner& bo);
void toAron(arondto::Point2PointParams& dto, const Point2PointParams& bo); void toAron(arondto::Point2PointParams& dto, const Point2PointParams& bo);
void fromAron(const arondto::Point2PointParams& dto, Point2PointParams& bo); void fromAron(const arondto::Point2PointParams& dto, Point2PointParams& bo);
} // namespace armarx::nav::glob_plan } // namespace armarx::nav::glob_plan::aron_conv
set(LIB_NAME ${PROJECT_NAME}TrajectoryControl) set(LIB_NAME ${PROJECT_NAME}TrajectoryControl)
armarx_component_set_name("${LIB_NAME}") armarx_component_set_name("${LIB_NAME}")
armarx_set_target("Library: ${LIB_NAME}") armarx_set_target("Library: ${LIB_NAME}")
armarx_add_library( armarx_add_library(
LIBS LIBS
ArmarXCoreInterfaces ArmarXCoreInterfaces
ArmarXCore ArmarXCore
RobotAPICore RobotAPICore
Navigation::Core Navigation::Core
SOURCES
SOURCES
./TrajectoryController.cpp ./TrajectoryController.cpp
./TrajectoryFollowingController.cpp ./TrajectoryFollowingController.cpp
./WaypointController.cpp ./WaypointController.cpp
HEADERS ./aron_conversions.cpp
HEADERS
./TrajectoryController.h ./TrajectoryController.h
./TrajectoryFollowingController.h ./TrajectoryFollowingController.h
./WaypointController.h ./WaypointController.h
./aron_conversions.h
)
add_library(
Navigation::TrajectoryControl
ALIAS
${PROJECT_NAME}TrajectoryControl
) )
add_library(Navigation::TrajectoryControl ALIAS ${PROJECT_NAME}TrajectoryControl) armarx_enable_aron_file_generation_for_target(
TARGET_NAME
"${LIB_NAME}"
ARON_FILES
aron/PIDParams.xml
aron/TrajectoryControllerParams.xml
aron/TrajectoryFollowingControllerParams.xml
aron/WaypointControllerParams.xml
# aron/AStarParams.xml
)
#find_package(MyLib QUIET) # find_package(MyLib QUIET) armarx_build_if(MyLib_FOUND "MyLib not available")
#armarx_build_if(MyLib_FOUND "MyLib not available") # all target_include_directories must be guarded by if(Xyz_FOUND) for multiple
# all target_include_directories must be guarded by if(Xyz_FOUND) # libraries write: if(X_FOUND AND Y_FOUND).... if(MyLib_FOUND)
# for multiple libraries write: if(X_FOUND AND Y_FOUND).... # target_include_directories(trajectory_control PUBLIC ${MyLib_INCLUDE_DIRS})
#if(MyLib_FOUND) # endif()
# target_include_directories(trajectory_control PUBLIC ${MyLib_INCLUDE_DIRS})
#endif()
# add unit tests # add unit tests
add_subdirectory(test) add_subdirectory(test)
<!--Some fancy comment -->
<?xml version="1.0" encoding="UTF-8" ?>
<AronTypeDefinition>
<GenerateTypes>
<Object name='armarx::nav::traj_ctrl::arondto::PIDParams'>
<ObjectChild key='Kp'>
<float />
</ObjectChild>
<ObjectChild key='Ki'>
<float />
</ObjectChild>
<ObjectChild key='Kd'>
<float />
</ObjectChild>
</Object>
</GenerateTypes>
</AronTypeDefinition>
<!--Some fancy comment -->
<?xml version="1.0" encoding="UTF-8" ?>
<AronTypeDefinition>
<CodeIncludes>
<!-- <Include include="<Navigation/libraries/trajectory_control/aron/TrajectoryControllerParams.aron.generated.h>" /> -->
</CodeIncludes>
<AronIncludes>
<!-- <Include include="<Navigation/libraries/trajectory_control/aron/TrajectoryControllerParams.xml>" /> -->
</AronIncludes>
<GenerateTypes>
<!-- <Object name='armarx::nav::glob_plan::arondto::Point2PointParams' extends="armarx::nav::traj_ctrl::arondto::TrajectoryControllerParams"> -->
<Object name='armarx::nav::traj_ctrl::arondto::TrajectoryControllerParams'>
<!-- <ObjectChild key='includeStartPose'>
<bool />
</ObjectChild>
<ObjectChild key='velocity'>
<float />
</ObjectChild> -->
</Object>
</GenerateTypes>
</AronTypeDefinition>
<!--Some fancy comment -->
<?xml version="1.0" encoding="UTF-8" ?>
<AronTypeDefinition>
<CodeIncludes>
<Include include="<Navigation/libraries/trajectory_control/aron/TrajectoryControllerParams.aron.generated.h>" />
<Include include="<Navigation/libraries/trajectory_control/aron/PIDParams.aron.generated.h>" />
</CodeIncludes>
<AronIncludes>
<Include include="<Navigation/libraries/trajectory_control/aron/TrajectoryControllerParams.xml>" />
<Include include="<Navigation/libraries/trajectory_control/aron/PIDParams.xml>" />
</AronIncludes>
<GenerateTypes>
<!-- <Object name='armarx::nav::traj_ctrl::arondto::TrajectoryFollowingControllerParams' extends="armarx::nav::traj_ctrl::arondto::TrajectoryControllerParams"> -->
<Object name='armarx::nav::traj_ctrl::arondto::TrajectoryFollowingControllerParams'>
<ObjectChild key='pidPos'>
<armarx::nav::traj_ctrl::arondto::PIDParams />
</ObjectChild>
<ObjectChild key='pidOri'>
<armarx::nav::traj_ctrl::arondto::PIDParams />
</ObjectChild>
</Object>
</GenerateTypes>
</AronTypeDefinition>
<!--Some fancy comment -->
<?xml version="1.0" encoding="UTF-8" ?>
<AronTypeDefinition>
<CodeIncludes>
<Include include="<Navigation/libraries/trajectory_control/aron/TrajectoryControllerParams.aron.generated.h>" />
</CodeIncludes>
<AronIncludes>
<Include include="<Navigation/libraries/trajectory_control/aron/TrajectoryControllerParams.xml>" />
</AronIncludes>
<GenerateTypes>
<!-- <Object name='armarx::nav::traj_ctrl::arondto::WaypointControllerParams' extends="armarx::nav::traj_ctrl::arondto::TrajectoryControllerParams"> -->
<Object name='armarx::nav::traj_ctrl::arondto::WaypointControllerParams'>
<ObjectChild key='includeStartPose'>
<bool />
</ObjectChild>
<ObjectChild key='velocity'>
<float />
</ObjectChild>
</Object>
</GenerateTypes>
</AronTypeDefinition>
#include "aron_conversions.h"
#include <RobotAPI/libraries/aron/common/aron_conversions.h>
#include "Navigation/libraries/trajectory_control/TrajectoryController.h"
#include "Navigation/libraries/trajectory_control/TrajectoryFollowingController.h"
#include "Navigation/libraries/trajectory_control/WaypointController.h"
namespace armarx::nav::traj_ctrl::aron_conv
{
void toAron(arondto::TrajectoryControllerParams& dto, const TrajectoryControllerParams& bo)
{
}
void fromAron(const arondto::TrajectoryControllerParams& dto, TrajectoryControllerParams& bo)
{
}
void toAron(arondto::TrajectoryFollowingControllerParams& dto, const TrajectoryFollowingControllerParams& bo)
{
}
void fromAron(const arondto::TrajectoryFollowingControllerParams& dto, TrajectoryFollowingControllerParams& bo)
{
}
void toAron(arondto::WaypointControllerParams& dto, const WaypointControllerParams& bo)
{
}
void fromAron(const arondto::WaypointControllerParams& dto, WaypointControllerParams& bo)
{
}
} // namespace armarx::nav::traj_ctrl::aron_conv
/*
* This file is part of ArmarX.
*
* ArmarX is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 as
* published by the Free Software Foundation.
*
* ArmarX is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @author Fabian Reister ( fabian dot reister at kit dot edu )
* @date 2021
* @copyright http://www.gnu.org/licenses/gpl-2.0.txt
* GNU General Public License
*/
#pragma once
namespace armarx::nav::traj_ctrl
{
struct TrajectoryControllerParams;
struct TrajectoryFollowingControllerParams;
struct WaypointControllerParams;
namespace arondto
{
class TrajectoryControllerParams;
class TrajectoryFollowingControllerParams;
class WaypointControllerParams;
} // namespace arondto
} // namespace armarx::nav::traj_ctrl
namespace armarx::nav::traj_ctrl::aron_conv
{
void toAron(arondto::TrajectoryControllerParams& dto, const TrajectoryControllerParams& bo);
void fromAron(const arondto::TrajectoryControllerParams& dto, TrajectoryControllerParams& bo);
void toAron(arondto::TrajectoryFollowingControllerParams& dto, const TrajectoryFollowingControllerParams& bo);
void fromAron(const arondto::TrajectoryFollowingControllerParams& dto, TrajectoryFollowingControllerParams& bo);
void toAron(arondto::WaypointControllerParams& dto, const WaypointControllerParams& bo);
void fromAron(const arondto::WaypointControllerParams& dto, WaypointControllerParams& bo);
} // namespace armarx::nav::traj_ctrl::aron_conv
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment