MoveJointsToZero.cpp
Go to the documentation of this file.
1
/*
2
* This file is part of ArmarX.
3
*
4
* Copyright (C) 2014-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
5
*
6
* ArmarX is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License version 2 as
8
* published by the Free Software Foundation.
9
*
10
* ArmarX is distributed in the hope that it will be useful, but
11
* WITHOUT ANY WARRANTY; without even the implied warranty of
12
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
* GNU General Public License for more details.
14
*
15
* You should have received a copy of the GNU General Public License
16
* along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*
18
* @package RobotSkillTemplates::MotionControlGroup
19
* @author Peter Kaiser ( peter dot kaiser at kit dot edu )
20
* @date 2014
21
* @copyright http://www.gnu.org/licenses/gpl-2.0.txt
22
* GNU General Public License
23
*/
24
25
#include "
MoveJointsToZero.h
"
26
#include <VirtualRobot/RobotNodeSet.h>
27
28
#include <RobotAPI/interface/units/KinematicUnitInterface.h>
29
30
#include "
MotionControlGroupStatechartContext.h
"
31
32
using namespace
armarx
;
33
using namespace
MotionControlGroup;
34
35
// DO NOT EDIT NEXT LINE
36
MoveJointsToZero::SubClassRegistry
MoveJointsToZero::Registry
(MoveJointsToZero::GetName(),
37
&
MoveJointsToZero::CreateInstance
);
38
39
MoveJointsToZero::MoveJointsToZero
(
XMLStateConstructorParams
stateData) :
40
XMLStateTemplate
<
MoveJointsToZero
>(stateData),
41
MoveJointsToZeroGeneratedBase<
MoveJointsToZero
>(stateData)
42
{
43
}
44
45
void
46
MoveJointsToZero::onEnter
()
47
{
48
MotionControlGroupStatechartContext
* context =
49
getContext<MotionControlGroupStatechartContext>();
50
51
// Set all zero target for all joints of the kinematic chain
52
NameValueMap
jointTargets;
53
std::string kinematicChain = in.getKinematicChainName();
54
55
for
(
auto
& node : context->
getRobot
()->getRobotNodeSet(kinematicChain)->getAllRobotNodes())
56
{
57
jointTargets[node->getName()] = 0;
58
}
59
60
local.setJointTargetValues(jointTargets);
61
}
62
63
void
64
MoveJointsToZero::onBreak
()
65
{
66
}
67
68
void
69
MoveJointsToZero::onExit
()
70
{
71
}
72
73
// DO NOT EDIT NEXT FUNCTION
74
XMLStateFactoryBasePtr
75
MoveJointsToZero::CreateInstance
(
XMLStateConstructorParams
stateData)
76
{
77
return
XMLStateFactoryBasePtr
(
new
MoveJointsToZero
(stateData));
78
}
armarx::MotionControlGroup::MoveJointsToZero::onBreak
void onBreak() override
Definition:
MoveJointsToZero.cpp:64
armarx::MotionControlGroup::MoveJointsToZero::onEnter
void onEnter() override
Definition:
MoveJointsToZero.cpp:46
armarx::MotionControlGroup::MotionControlGroupStatechartContext
Definition:
MotionControlGroupStatechartContext.h:75
armarx::XMLStateConstructorParams
Definition:
XMLState.h:49
MoveJointsToZero.h
armarx::XMLStateFactoryBasePtr
IceInternal::Handle< XMLStateFactoryBase > XMLStateFactoryBasePtr
Definition:
XMLState.h:64
IceInternal::Handle
Definition:
forward_declarations.h:8
armarx::MotionControlGroup::MoveJointsToZero::MoveJointsToZero
MoveJointsToZero(XMLStateConstructorParams stateData)
Definition:
MoveJointsToZero.cpp:39
armarx::MotionControlGroup::MotionControlGroupStatechartContext::getRobot
const std::shared_ptr< RemoteRobot > getRobot()
Definition:
MotionControlGroupStatechartContext.h:90
armarx::MotionControlGroup::MoveJointsToZero::onExit
void onExit() override
Definition:
MoveJointsToZero.cpp:69
armarx::XMLStateTemplate
Class for legacy to stay compatible with old statecharts.
Definition:
XMLState.h:146
armarx::MotionControlGroup::MoveJointsToZero::CreateInstance
static XMLStateFactoryBasePtr CreateInstance(XMLStateConstructorParams stateData)
Definition:
MoveJointsToZero.cpp:75
MotionControlGroupStatechartContext.h
armarx::control::njoint_controller::platform::platform_follower_controller::NameValueMap
std::map< std::string, float > NameValueMap
Definition:
PlatformFollowerController.h:88
armarx::MotionControlGroup::MoveJointsToZero::Registry
static SubClassRegistry Registry
Definition:
MoveJointsToZero.h:43
armarx::MotionControlGroup::MoveJointsToZero
Definition:
MoveJointsToZero.h:31
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition:
ArmarXTimeserver.cpp:27
RobotSkillTemplates
statecharts
MotionControlGroup
MoveJointsToZero.cpp
Generated on Sat Mar 29 2025 09:17:33 for armarx_documentation by
1.8.17