GuidingWithCollAvoidance.h
Go to the documentation of this file.
1#pragma once
2
3#include <RobotAPI/interface/units/KinematicUnitInterface.h>
7
9#include <armarx/control/skills/aron/GuidingWithCollAvoidanceParams.aron.generated.h>
11
13{
14
15 /**
16 * @class GuidingWithCollAvoidance
17 * @brief GuidingWithCollAvoidance-skill to enable guiding mode with collision avoidance
18 *
19 * create a zero-torque controller (potentially with drifting) and collision avoidance.
20 */
22 public ::armarx::skills::SimpleSpecializedSkill<arondto::GuidingWithCollAvoidanceParams>
23 {
24
25 public:
26 struct Services
27 {
29 //armarx::manipulation::Robot& robot;
30 /*::armarx::KinematicUnitInterfacePrx kinematicUnit;
31 ::armarx::armem::robot_state::VirtualRobotReader virtualRobotReader;
32 std::string robotName;*/
33 };
34
35 static ::armarx::skills::SkillDescription
37 {
38 ParamType defaultParams;
39 defaultParams.mode = arondto::GuidingMode::left_arm;
40 return ::armarx::skills::SkillDescription{
41 .skillId = {.skillName = constants::GUIDING_COLL_AVOIDANCE_SKILL_NAME},
42 .description = "Enable guiding mode with collision avoidance feature.",
43 .rootProfileDefaults = defaultParams.toAron(),
44 .timeout = ::armarx::Duration::Minutes(1),
45 .parametersType = ParamType::ToAronType()};
46 }
47
48 GuidingWithCollAvoidance(const Services&);
49
50
51 private:
52 using Base::exit;
53 using Base::main;
54
55 ::armarx::skills::Skill::MainResult main(const SpecializedMainInput& in) override;
56 ::armarx::skills::Skill::ExitResult exit(const SpecializedExitInput& in) override;
57
58
59 private:
60 Services srv_;
61 };
62
63} // namespace armarx::control::skills::skills
static Duration Minutes(std::int64_t minutes)
Constructs a duration in minutes.
Definition Duration.cpp:96
virtual MainResult main()
Override this method with the actual implementation.
Definition Skill.cpp:542
virtual ExitResult exit()
Override this method with the actual implementation.
Definition Skill.cpp:535
A result struct for skill exit function.
Definition Skill.h:69
A result struct for th main method of a skill.
Definition Skill.h:62