TrackingGroupStatechartContext.h
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::TrackingGroup
19  * @author Manfred Kroehnert ( Manfred dot Kroehnert at kit dot edu )
20  * @date 2015
21  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
22  * GNU General Public License
23  */
24 
25 
26 #pragma once
27 
31 
32 // Custom Includes
33 //#include <RobotAPI/interface/units/KinematicUnitInterface.h>
34 //#include <RobotAPI/interface/units/TCPControlUnit.h>
35 //#include <RobotAPI/interface/observers/KinematicUnitObserverInterface.h>
36 //#include <RobotAPI/interface/core/RobotState.h>
37 //#include <VirtualRobot/VirtualRobot.h>
38 
39 
40 namespace armarx::TrackingGroup
41 {
42 
44  {
47  {
48  // defineRequiredProperty<std::string>("KinematicUnitName", "Name of the kinematic unit that should be used");
49  // defineRequiredProperty<std::string>("KinematicUnitObserverName", "Name of the kinematic unit observer that should be used");
50  // defineOptionalProperty<std::string>("RobotStateComponentName", "RobotStateComponent", "Name of the robot state component that should be used");
51  // defineOptionalProperty<std::string>("TCPControlUnitName", "TCPControlUnit", "Name of the tcp control unit component that should be used");
52  }
53  };
54 
55  /**
56  * @class TrackingGroupStatechartContext is a custom implementation of the StatechartContext
57  * for a statechart
58  */
60  virtual public XMLStatechartContext
61  {
62  public:
63  // inherited from Component
64  virtual std::string
66  {
67  return "TrackingGroupStatechartContext";
68  }
69 
70  void onInitStatechartContext() override;
71  void onConnectStatechartContext() override;
72 
73 
74  // const VirtualRobot::RobotPtr getRobot() { return remoteRobot;}
75  // RobotStateComponentInterfacePrx getRobotStateComponent() { return robotStateComponent; }
76  // KinematicUnitInterfacePrx getKinematicUnit() { return kinematicUnitPrx; }
77  // std::string getKinematicUnitObserverName() { return getProperty<std::string>("KinematicUnitObserverName").getValue(); }
78  // TCPControlUnitInterfacePrx getTCPControlUnit() { return tcpControlPrx;}
79  private:
80  /**
81  * @see PropertyUser::createPropertyDefinitions()
82  */
83  PropertyDefinitionsPtr createPropertyDefinitions() override;
84 
85 
86  // RobotStateComponentInterfacePrx robotStateComponent;
87  // KinematicUnitInterfacePrx kinematicUnitPrx;
88  // KinematicUnitObserverInterfacePrx kinematicUnitObserverPrx;
89  // TCPControlUnitInterfacePrx tcpControlPrx;
90  // VirtualRobot::RobotPtr remoteRobot;
91  };
92 
93 } // namespace armarx::TrackingGroup
armarx::XMLStatechartContext
Definition: StatechartContext.h:208
armarx::TrackingGroup::TrackingGroupStatechartContextProperties::TrackingGroupStatechartContextProperties
TrackingGroupStatechartContextProperties(std::string prefix)
Definition: TrackingGroupStatechartContext.h:45
armarx::PropertyDefinitionContainer::prefix
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
Definition: PropertyDefinitionContainer.h:345
StatechartContext.h
ARMARXCOMPONENT_IMPORT_EXPORT
#define ARMARXCOMPONENT_IMPORT_EXPORT
Definition: ImportExportComponent.h:38
armarx::TrackingGroup::TrackingGroupStatechartContext::getDefaultName
virtual std::string getDefaultName()
Definition: TrackingGroupStatechartContext.h:65
Component.h
armarx::TrackingGroup::TrackingGroupStatechartContextProperties
Definition: TrackingGroupStatechartContext.h:43
IceUtil::Handle< class PropertyDefinitionContainer >
armarx::TrackingGroup::TrackingGroupStatechartContext
Definition: TrackingGroupStatechartContext.h:59
armarx::TrackingGroup
Definition: DetectObject.h:29
armarx::StatechartContextPropertyDefinitions
The StatechartContextPropertyDefinitions class contains properties associated with all statecharts.
Definition: StatechartContext.h:56
ImportExportComponent.h