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 "
MotionControlGroupStatechartContext.h
"
27
28
#include <RobotAPI/interface/units/KinematicUnitInterface.h>
29
30
using namespace
armarx
;
31
using namespace
MotionControlGroup;
32
33
// DO NOT EDIT NEXT LINE
34
MoveJointsToZero::SubClassRegistry
MoveJointsToZero::Registry
(MoveJointsToZero::GetName(), &
MoveJointsToZero::CreateInstance
);
35
36
37
38
MoveJointsToZero::MoveJointsToZero
(
XMLStateConstructorParams
stateData) :
39
XMLStateTemplate
<
MoveJointsToZero
>(stateData),
40
MoveJointsToZeroGeneratedBase<
MoveJointsToZero
>(stateData)
41
{
42
}
43
44
void
MoveJointsToZero::onEnter
()
45
{
46
MotionControlGroupStatechartContext
* context = getContext<MotionControlGroupStatechartContext>();
47
48
// Set all zero target for all joints of the kinematic chain
49
NameValueMap
jointTargets;
50
std::string kinematicChain = in.getKinematicChainName();
51
52
for
(
auto
& node : context->
getRobot
()->getRobotNodeSet(kinematicChain)->getAllRobotNodes())
53
{
54
jointTargets[node->getName()] = 0;
55
}
56
57
local.setJointTargetValues(jointTargets);
58
}
59
60
61
void
MoveJointsToZero::onBreak
()
62
{
63
}
64
65
void
MoveJointsToZero::onExit
()
66
{
67
}
68
69
70
// DO NOT EDIT NEXT FUNCTION
71
XMLStateFactoryBasePtr
MoveJointsToZero::CreateInstance
(
XMLStateConstructorParams
stateData)
72
{
73
return
XMLStateFactoryBasePtr
(
new
MoveJointsToZero
(stateData));
74
}
75
armarx::MotionControlGroup::MoveJointsToZero::onBreak
void onBreak() override
Definition:
MoveJointsToZero.cpp:61
armarx::MotionControlGroup::MoveJointsToZero::onEnter
void onEnter() override
Definition:
MoveJointsToZero.cpp:44
armarx::MotionControlGroup::MotionControlGroupStatechartContext
Definition:
MotionControlGroupStatechartContext.h:66
armarx::XMLStateConstructorParams
Definition:
XMLState.h:50
MoveJointsToZero.h
IceInternal::Handle
Definition:
forward_declarations.h:8
armarx::MotionControlGroup::MoveJointsToZero::MoveJointsToZero
MoveJointsToZero(XMLStateConstructorParams stateData)
Definition:
MoveJointsToZero.cpp:38
armarx::MotionControlGroup::MotionControlGroupStatechartContext::getRobot
const std::shared_ptr< RemoteRobot > getRobot()
Definition:
MotionControlGroupStatechartContext.h:79
armarx::MotionControlGroup::MoveJointsToZero::onExit
void onExit() override
Definition:
MoveJointsToZero.cpp:65
armarx::XMLStateTemplate
Class for legacy to stay compatible with old statecharts.
Definition:
XMLState.h:137
armarx::MotionControlGroup::MoveJointsToZero::CreateInstance
static XMLStateFactoryBasePtr CreateInstance(XMLStateConstructorParams stateData)
Definition:
MoveJointsToZero.cpp:71
MotionControlGroupStatechartContext.h
armarx::XMLStateFactoryBasePtr
IceInternal::Handle< XMLStateFactoryBase > XMLStateFactoryBasePtr
Definition:
XMLState.h:65
armarx::control::njoint_controller::platform::platform_follower_controller::NameValueMap
std::map< std::string, float > NameValueMap
Definition:
PlatformFollowerController.h:91
armarx::MotionControlGroup::MoveJointsToZero::Registry
static SubClassRegistry Registry
Definition:
MoveJointsToZero.h:44
armarx::MotionControlGroup::MoveJointsToZero
Definition:
MoveJointsToZero.h:31
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition:
ArmarXTimeserver.cpp:28
RobotSkillTemplates
statecharts
MotionControlGroup
MoveJointsToZero.cpp
Generated on Sat Oct 12 2024 09:14:13 for armarx_documentation by
1.8.17