CloseHandWithTorques.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::FindAndGraspObjectGroup
19
* @author Valerij Wittenbeck ( valerij dot wittenbeck at student dot 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 "
CloseHandWithTorques.h
"
26
27
using namespace
armarx
;
28
using namespace
FindAndGraspObjectGroup;
29
30
// DO NOT EDIT NEXT LINE
31
CloseHandWithTorques::SubClassRegistry
CloseHandWithTorques::Registry
(
CloseHandWithTorques::GetName
(), &
CloseHandWithTorques::CreateInstance
);
32
33
34
35
CloseHandWithTorques::CloseHandWithTorques
(
XMLStateConstructorParams
stateData) :
36
XMLStateTemplate
<
CloseHandWithTorques
> (stateData)
37
{
38
}
39
40
void
CloseHandWithTorques::onEnter
()
41
{
42
ARMARX_VERBOSE
<<
"Entering CloseHandWithTorques::onEnter()"
;
43
44
RobotStatechartContext
* rsContext = getContext<RobotStatechartContext>();
45
SingleTypeVariantListPtr
jointNames = getInput<SingleTypeVariantList>(
"jointNames"
);
46
SingleTypeVariantListPtr
jointTorquesGraspList = getInput<SingleTypeVariantList>(
"jointTorquesGrasp"
);
47
NameValueMap
jointNamesAndValues;
48
49
if
(jointNames->getSize() == jointTorquesGraspList->getSize())
50
{
51
for
(
int
j = 0; j < jointNames->getSize(); j++)
52
{
53
jointNamesAndValues[jointNames->getVariant(j)->getString()] = jointTorquesGraspList->getVariant(j)->getFloat();
54
}
55
}
56
else
57
{
58
throw
LocalException(
"StateCloseHandWithTorques: List lengths do not match!"
);
59
}
60
61
rsContext->
kinematicUnitPrx
->setJointTorques(jointNamesAndValues);
62
63
ARMARX_DEBUG
<<
"Installing timeoutMinExecutionTime condition"
;
64
float
timeoutMinExecutionTime = getInput<float>(
"timeoutMinExecutionTime"
);
65
condMinimumExecutionTimeout
=
setTimeoutEvent
(timeoutMinExecutionTime, createEvent<EvMinExecutionTimeout>());
66
67
ARMARX_VERBOSE
<<
"Done CloseHandWithTorques::onEnter()"
;
68
}
69
70
void
CloseHandWithTorques::onExit
()
71
{
72
removeTimeoutEvent
(
condMinimumExecutionTimeout
);
73
}
74
75
// DO NOT EDIT NEXT FUNCTION
76
std::string
CloseHandWithTorques::GetName
()
77
{
78
return
"CloseHandWithTorques"
;
79
}
80
81
// DO NOT EDIT NEXT FUNCTION
82
XMLStateFactoryBasePtr
CloseHandWithTorques::CreateInstance
(
XMLStateConstructorParams
stateData)
83
{
84
return
XMLStateFactoryBasePtr
(
new
CloseHandWithTorques
(stateData));
85
}
86
ARMARX_VERBOSE
#define ARMARX_VERBOSE
Definition:
Logging.h:180
armarx::FindAndGraspObjectGroup::CloseHandWithTorques::CloseHandWithTorques
CloseHandWithTorques(XMLStateConstructorParams stateData)
Definition:
CloseHandWithTorques.cpp:35
armarx::FindAndGraspObjectGroup::CloseHandWithTorques::Registry
static SubClassRegistry Registry
Definition:
CloseHandWithTorques.h:48
armarx::XMLStateConstructorParams
Definition:
XMLState.h:50
CloseHandWithTorques.h
armarx::FindAndGraspObjectGroup::CloseHandWithTorques::CreateInstance
static XMLStateFactoryBasePtr CreateInstance(XMLStateConstructorParams stateData)
Definition:
CloseHandWithTorques.cpp:82
IceInternal::Handle< SingleTypeVariantList >
armarx::RobotStatechartContext
Definition:
RobotStatechartContext.h:66
armarx::StateUtility::setTimeoutEvent
ActionEventIdentifier setTimeoutEvent(int timeoutDurationMs, const EventPtr &evt)
Utility function to start a timer on the systemObserver and register an event on the conditionHandler...
Definition:
StateUtil.cpp:144
armarx::XMLStateTemplate
Class for legacy to stay compatible with old statecharts.
Definition:
XMLState.h:137
armarx::FindAndGraspObjectGroup::CloseHandWithTorques
Definition:
CloseHandWithTorques.h:34
ARMARX_DEBUG
#define ARMARX_DEBUG
Definition:
Logging.h:177
armarx::FindAndGraspObjectGroup::CloseHandWithTorques::GetName
static std::string GetName()
Definition:
CloseHandWithTorques.cpp:76
armarx::FindAndGraspObjectGroup::CloseHandWithTorques::onEnter
void onEnter() override
Virtual function, in which the behaviour of state is defined, when it is entered. Can be overridden,...
Definition:
CloseHandWithTorques.cpp:40
armarx::FindAndGraspObjectGroup::CloseHandWithTorques::condMinimumExecutionTimeout
ActionEventIdentifier condMinimumExecutionTimeout
Definition:
CloseHandWithTorques.h:53
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::FindAndGraspObjectGroup::CloseHandWithTorques::onExit
void onExit() override
Virtual function, in which the behaviour of state is defined, when it is exited. Can be overridden,...
Definition:
CloseHandWithTorques.cpp:70
armarx::StateUtility::removeTimeoutEvent
void removeTimeoutEvent(const ActionEventIdentifier &id)
Definition:
StateUtil.cpp:178
armarx::RobotStatechartContext::kinematicUnitPrx
KinematicUnitInterfacePrx kinematicUnitPrx
Definition:
RobotStatechartContext.h:97
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition:
ArmarXTimeserver.cpp:28
RobotSkillTemplates
statecharts
deprecated
FindAndGraspObjectGroup
GraspingWithTorquesSubGroup
CloseHandWithTorques.cpp
Generated on Sat Oct 12 2024 09:14:13 for armarx_documentation by
1.8.17