27 #include <VirtualRobot/Robot.h>
28 #include <VirtualRobot/RobotNodeSet.h>
30 #include <RobotSkillTemplates/statecharts/ForceControlGroup/ForceControlGroupStatechartContext.generated.h>
33 using namespace ForceControlGroup;
48 ForceControlGroupStatechartContext*
c = getContext<ForceControlGroupStatechartContext>();
49 c->getTCPControlUnit()->request();
54 if (in.istcpNameSet())
56 tcpName = in.gettcpName();
60 tcpName =
c->getRobot()->getRobotNodeSet(in.getrobotNodeSetName())->getTCP()->getName();
64 DatafieldRefPtr::dynamicCast(
c->getForceTorqueObserver()->getForceDatafield(tcpName));
66 DatafieldRefPtr::dynamicCast(
c->getForceTorqueObserver()->getTorqueDatafield(tcpName));
68 DatafieldRefPtr::dynamicCast(
c->getForceTorqueObserver()->createNulledDatafield(forceRef)));
69 local.settorqueRef(DatafieldRefPtr::dynamicCast(
70 c->getForceTorqueObserver()->createNulledDatafield(torqueRef)));
71 local.setstartVelocity(
72 new FramedDirection(Eigen::Vector3f::Zero(), tcpName,
c->getRobot()->getName()));
80 ForceControlGroupStatechartContext*
c = getContext<ForceControlGroupStatechartContext>();
81 c->getTCPControlUnit()->release();
82 c->getForceTorqueObserver()->removeFilteredDatafield(local.getforceRef());