MovePlatformToPose.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 2021
18  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
19  * GNU General Public License
20  */
21 
22 #pragma once
23 
24 // ArmarX
26 
27 // Base Class
28 #include "PlatformControlSkill.h"
29 
30 // Type
31 #include <RobotSkillTemplates/libraries/skill_platform_control/aron/MovePlatformToPoseAcceptedType.aron.generated.h>
32 
33 // Proxies
34 #include <RobotAPI/interface/units/PlatformUnitInterface.h>
35 
36 // Others
42 
43 namespace armarx::skills
44 {
45 
47  public PlatformControlSkill,
50  platform_control::arondto::MovePlatformToPoseAcceptedType>
51  {
52  public:
53  using ArgType = platform_control::arondto::MovePlatformToPoseAcceptedType;
54 
58 
59  private:
60  // executor
61  Skill::InitResult init(const SpecializedInitInput& in) final;
62  Skill::ExitResult exit(const SpecializedExitInput& in) final;
63  StepResult step(const SpecializedMainInput& in) final;
64 
65  public:
67 
68  private:
69  float
70  signedMin(float newValue, float minAbsValue) const
71  {
72  return std::copysign(std::min<float>(fabs(newValue), minAbsValue), newValue);
73  }
74  };
75 } // namespace armarx::skills
armarx::skills::mixin::MNSSkillMixin::mns
armem::client::MemoryNameSystem mns
Definition: MNSSkillMixin.h:11
ArVizComponentPlugin.h
armarx::skills::SimpleSpecializedSkill< platform_control::arondto::MovePlatformToPoseAcceptedType >::init
Skill::InitResult init() final
Definition: SimpleSpecializedSkill.h:62
armarx::skills
This file is part of ArmarX.
Definition: PeriodicUpdateWidget.cpp:11
armarx::skills::SkillDescription
Definition: SkillDescription.h:18
armarx::skills::MovePlatformToPose::Description
static SkillDescription Description
Definition: MovePlatformToPose.h:66
armarx::skills::MovePlatformToPose::ArgType
platform_control::arondto::MovePlatformToPoseAcceptedType ArgType
Definition: MovePlatformToPose.h:53
armarx::skills::mixin::RobotReadingSkillMixin
Definition: RobotReadingSkillMixin.h:9
armarx::skills::mixin::ArvizSkillMixin::arviz
armarx::viz::Client arviz
Definition: ArvizSkillMixin.h:11
armarx::skills::SimpleSpecializedSkill< platform_control::arondto::MovePlatformToPoseAcceptedType >::exit
Skill::ExitResult exit() final
Definition: SimpleSpecializedSkill.h:81
armarx::skills::MovePlatformToPose::MovePlatformToPose
MovePlatformToPose(armem::client::MemoryNameSystem &mns, armarx::viz::Client &arviz, PlatformControlSkillContext &context)
Definition: MovePlatformToPose.cpp:27
FramedPose.h
armarx::skills::PlatformControlSkill
Definition: PlatformControlSkill.h:56
armarx::skills::PlatformControlSkill::context
PlatformControlSkillContext & context
Definition: PlatformControlSkill.h:76
armarx::skills::MovePlatformToPose
Definition: MovePlatformToPose.h:46
VirtualRobotReader.h
armarx::skills::PlatformControlSkillContext
Definition: PlatformControlSkill.h:45
Component.h
ObjectReader.h
armarx::skills::Skill::ExitResult
A result struct for skill exit function.
Definition: Skill.h:55
armarx::skills::SimplePeriodicSpecializedSkill
Definition: SimplePeriodicSpecializedSkill.h:11
PlatformControlSkill.h
armarx::skills::Skill::InitResult
A result struct for skill initialization.
Definition: Skill.h:36
armarx::armem::client::MemoryNameSystem
The memory name system (MNS) client.
Definition: MemoryNameSystem.h:69
armarx::viz::Client
Definition: Client.h:109
KnownGraspCandidateReader.h
armarx::skills::PeriodicSkill::StepResult
Definition: PeriodicSkill.h:36