Component.h
Go to the documentation of this file.
1#pragma once
2
4
5#include <RobotAPI/interface/units/HandUnitInterface.h>
6#include <RobotAPI/interface/units/KinematicUnitInterface.h>
16
18#include <armarx/control/components/control_skill_provider/ComponentInterface.h>
20
22{
23 class Component :
24 virtual public ::armarx::Component,
25 virtual public ::armarx::control::components::control_skill_provider::ComponentInterface,
31 {
32
33 public:
34 Component();
35
36 /// @see armarx::ManagedIceObject::getDefaultName()
37 std::string getDefaultName() const override;
38
39 /// Get the component's default name.
40 static std::string GetDefaultName();
41
42
43 protected:
44 /// @see PropertyUser::createPropertyDefinitions()
46
47 /// @see armarx::ManagedIceObject::onInitComponent()
48 void onInitComponent() override;
49
50 /// @see armarx::ManagedIceObject::onConnectComponent()
51 void onConnectComponent() override;
52
53 /// @see armarx::ManagedIceObject::onDisconnectComponent()
54 void onDisconnectComponent() override;
55
56 /// @see armarx::ManagedIceObject::onExitComponent()
57 void onExitComponent() override;
58
59
60 private:
61 struct Remote
62 {
63 ::armarx::KinematicUnitInterfacePrx kinematicUnit;
64 ::armarx::HandUnitInterfacePrx leftHandUnit;
65 ::armarx::HandUnitInterfacePrx rightHandUnit;
67 robotUnitPlugin;
70 robotReaderPlugin;
71 } remote;
72
73 struct SkillBlueprints
74 {
77 zeroTorque;
78 } skillBlueprints;
79
80 struct Properties
81 {
82 std::string robotName;
83 std::string homePoseConfiguration = "Home";
84 } properties;
85
86 static const std::string defaultName;
87 };
88
89} // namespace armarx::control::components::control_skill_provider
Provides a ready-to-use ArViz client arviz as member variable.
Baseclass for all ArmarX ManagedIceObjects requiring properties.
Definition Component.h:94
A component plugin offering client-side access to a reader or writer and manages the lifecycle,...
::armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
Definition Component.cpp:34
static std::string GetDefaultName()
Get the component's default name.
plugins::PluginUser PluginUser
Definition PluginUser.h:47
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.