ComponentPlugin.h
Go to the documentation of this file.
1 #pragma once
2 
3 
6 
9 #include <armarx/navigation/client/ice/NavigatorInterface.h>
12 
13 namespace armarx::armem::client
14 {
15  class MemoryNameSystem;
16 }
17 
19 {
20 
21  class Navigator;
22 
24  {
25  public:
28 
29  ~ComponentPlugin() override;
30 
32 
33  void preOnInitComponent() override;
34 
35  void preOnConnectComponent() override;
36 
37  void configureNavigator(const client::NavigationStackConfig& stackConfig,
38  const std::string& configId);
39 
40  private:
41  static constexpr const char* PROPERTY_NAME = "nav.NavigatorName";
42 
43  client::NavigatorInterfacePrx navigatorPrx;
44  IceNavigator iceNavigator;
45 
46  std::unique_ptr<SimpleEventHandler> eventHandler;
47 
48  public:
49  std::unique_ptr<Navigator> navigator;
50  };
51 
52 
53  class ComponentPluginUser : virtual public ManagedIceObject
54  {
55 
56  public:
58 
59  void configureNavigator(const client::NavigationStackConfig& stackConfig);
60 
62 
63  // Non-API
64  ~ComponentPluginUser() override;
65 
66  private:
67  ComponentPlugin* plugin = nullptr;
68  };
69 
70 } // namespace armarx::navigation::client
Navigator.h
armarx::navigation::client::Navigator
Definition: Navigator.h:115
armarx::navigation::client::ComponentPlugin::configureNavigator
void configureNavigator(const client::NavigationStackConfig &stackConfig, const std::string &configId)
Definition: ComponentPlugin.cpp:56
armarx::ManagedIceObjectPlugin::prefix
const std::string & prefix() const
Definition: ManagedIceObjectPlugin.cpp:63
armarx::ManagedIceObjectPlugin::parent
ManagedIceObject & parent()
Definition: ManagedIceObjectPlugin.cpp:69
armarx::navigation::client::ComponentPlugin::~ComponentPlugin
~ComponentPlugin() override
armarx::navigation::client::ComponentPluginUser::getNavigator
Navigator & getNavigator()
Definition: ComponentPlugin.cpp:106
armarx::navigation::client::ComponentPluginUser
Definition: ComponentPlugin.h:53
armarx::armem::client
This file is part of ArmarX.
Definition: forward_declarations.h:7
armarx::navigation::client
This file is part of ArmarX.
Definition: ComponentPlugin.cpp:20
armarx::navigation::client::ComponentPluginUser::~ComponentPluginUser
~ComponentPluginUser() override
armarx::navigation::client::NavigationStackConfig
Definition: NavigationStackConfig.h:55
armarx::navigation::client::IceNavigator
Definition: IceNavigator.h:17
armarx::navigation::client::ComponentPluginUser::configureNavigator
void configureNavigator(const client::NavigationStackConfig &stackConfig)
Definition: ComponentPlugin.cpp:99
Navigator
Brief description of class Navigator.
ManagedIceObject.h
armarx::ComponentPlugin
Definition: ComponentPlugin.h:38
ComponentPlugin.h
armarx::navigation::client::ComponentPlugin::ComponentPlugin
ComponentPlugin(ManagedIceObject &parent, const std::string &prefix)
Definition: ComponentPlugin.h:26
IceNavigator.h
SimpleEventHandler.h
armarx::navigation::client::ComponentPlugin::preOnConnectComponent
void preOnConnectComponent() override
Definition: ComponentPlugin.cpp:43
armarx::ManagedIceObject
The ManagedIceObject is the base class for all ArmarX objects.
Definition: ManagedIceObject.h:163
IceUtil::Handle< class PropertyDefinitionContainer >
armarx::navigation::client::ComponentPlugin::navigator
std::unique_ptr< Navigator > navigator
Definition: ComponentPlugin.h:49
armarx::navigation::client::ComponentPlugin
Definition: ComponentPlugin.h:23
ComponentPlugin.h
armarx::navigation::client::ComponentPlugin::preOnInitComponent
void preOnInitComponent() override
Definition: ComponentPlugin.cpp:36
armarx::navigation::client::ComponentPlugin::postCreatePropertyDefinitions
void postCreatePropertyDefinitions(armarx::PropertyDefinitionsPtr &properties) override
Definition: ComponentPlugin.cpp:26
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition: ArmarXTimeserver.cpp:28
armarx::navigation::client::ComponentPluginUser::ComponentPluginUser
ComponentPluginUser()
Definition: ComponentPlugin.cpp:92