person_simulator_skill_provider.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <optional>
4 
6 
11 
12 #include <VisionX/interface/components/PersonSimulatorSkillProviderInterface.h>
14 
16 {
17 
18  class Component :
19  virtual public armarx::Component,
21  virtual public PersonSimulatorSkillProviderInterface,
23  {
24  public:
25  Component();
26  /// @see armarx::ManagedIceObject::getDefaultName()
27  std::string getDefaultName() const override;
28 
29  /// Get the component's default name.
30  static std::string GetDefaultName();
31 
32 
33  protected:
34  /// @see PropertyUser::createPropertyDefinitions()
36 
37  /// @see armarx::ManagedIceObject::onInitComponent()
38  void onInitComponent() override;
39 
40  /// @see armarx::ManagedIceObject::onConnectComponent()
41  void onConnectComponent() override;
42 
43  /// @see armarx::ManagedIceObject::onDisconnectComponent()
44  void onDisconnectComponent() override;
45 
46  /// @see armarx::ManagedIceObject::onExitComponent()
47  void onExitComponent() override;
48 
49 
50  /* (Requires armarx::LightweightRemoteGuiComponentPluginUser.)
51  /// This function should be called once in onConnect() or when you
52  /// need to re-create the Remote GUI tab.
53  void createRemoteGuiTab();
54 
55  /// After calling `RemoteGui_startRunningTask`, this function is
56  /// called periodically in a separate thread. If you update variables,
57  /// make sure to synchronize access to them.
58  void RemoteGui_update() override;
59  */
60 
61 
62  private:
63  // Private methods go here.
64 
65  // Forward declare `Properties` if you used it before its defined.
66  // struct Properties;
67 
68  /* (Requires the armarx::ArVizComponentPluginUser.)
69  /// Draw some boxes in ArViz.
70  void drawBoxes(const Properties& p, viz::Client& arviz);
71  */
72 
73 
74  private:
75  static const std::string defaultName;
76 
77 
79 
80  /* (Requires the armarx::LightweightRemoteGuiComponentPluginUser.)
81  /// Tab shown in the Remote GUI.
82  struct RemoteGuiTab : armarx::RemoteGui::Client::Tab
83  {
84  armarx::RemoteGui::Client::LineEdit boxLayerName;
85  armarx::RemoteGui::Client::IntSpinBox numBoxes;
86 
87  armarx::RemoteGui::Client::Button drawBoxes;
88  };
89  RemoteGuiTab tab;
90  */
91 
92  template <typename T>
94 
95 
97  virtualRobotReaderPlugin = nullptr;
98  };
99 
100 } // namespace visionx::components::person_simulator_skill_provider
visionx::components::person_simulator_skill_provider::Component::onConnectComponent
void onConnectComponent() override
Definition: person_simulator_skill_provider.cpp:47
visionx::components::person_simulator_skill_provider::Component::GetDefaultName
static std::string GetDefaultName()
Get the component's default name.
Definition: person_simulator_skill_provider.cpp:85
SkillProviderComponentPlugin.h
armarx::armem::client::plugins::ReaderWriterPlugin
A component plugin offering client-side access to a reader or writer and manages the lifecycle,...
Definition: ReaderWriterPlugin.h:44
visionx::components::person_simulator_skill_provider::Component::createPropertyDefinitions
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
Definition: person_simulator_skill_provider.cpp:19
PersonSimulator.h
visionx::components::person_simulator_skill_provider::Component::onDisconnectComponent
void onDisconnectComponent() override
Definition: person_simulator_skill_provider.cpp:69
ReaderWriterPlugin.h
visionx::components::person_simulator_skill_provider::Component
Definition: person_simulator_skill_provider.h:18
visionx::components::person_simulator_skill_provider::Component::onExitComponent
void onExitComponent() override
Definition: person_simulator_skill_provider.cpp:74
VisionX::person_simulator::core::PersonSimulator::Properties
Fixed properties of this skill implementation.
Definition: PersonSimulator.h:56
armarx::SkillProviderComponentPluginUser
Definition: SkillProviderComponentPlugin.h:109
visionx::components::person_simulator_skill_provider::Component::Component
Component()
Definition: person_simulator_skill_provider.cpp:11
VirtualRobotReader.h
plugins.h
Component.h
armarx::Component
Baseclass for all ArmarX ManagedIceObjects requiring properties.
Definition: Component.h:91
IceUtil::Handle< class PropertyDefinitionContainer >
visionx::components::person_simulator_skill_provider::Component::onInitComponent
void onInitComponent() override
Definition: person_simulator_skill_provider.cpp:37
visionx::components::person_simulator_skill_provider
Definition: person_simulator_skill_provider.cpp:9
armarx::armem::client::plugins::ListeningPluginUser
A memory name system client which listens to the memory updates topic (MemoryListenerInterface).
Definition: ListeningPluginUser.h:21
visionx::components::person_simulator_skill_provider::Component::getDefaultName
std::string getDefaultName() const override
Definition: person_simulator_skill_provider.cpp:79