ArticulatedObjectLocalizerExample.h
Go to the documentation of this file.
1
2#pragma once
3
4#include <VirtualRobot/VirtualRobot.h>
5
8#include <ArmarXCore/interface/observers/ObserverInterface.h>
10
12
15#include <RobotAPI/interface/armem/mns/MemoryNameSystemInterface.h>
16#include <RobotAPI/interface/armem/server/MemoryInterface.h>
22
24{
25
26 /**
27 * @defgroup Component-ExampleClient ExampleClient
28 * @ingroup RobotAPI-Components
29 * A description of the component ExampleClient.
30 *
31 * @class ExampleClient
32 * @ingroup Component-ExampleClient
33 * @brief Brief description of class ExampleClient.
34 *
35 * Detailed description of class ExampleClient.
36 */
38 virtual public armarx::Component,
40 {
41 public:
43
44 /// @see armarx::ManagedIceObject::getDefaultName()
45 std::string getDefaultName() const override;
46
47 protected:
49
50 void onInitComponent() override;
51 void onConnectComponent() override;
52 void onDisconnectComponent() override;
53 void onExitComponent() override;
54
55 void run();
56
57 private:
58 VirtualRobot::RobotPtr createArticulatedObject();
59 std::shared_ptr<VirtualRobot::Robot> articulatedObject;
60
61 /// Reference timestamp for object movement
62 armem::Time start;
63
65
67
70 articulatedObjectWriterPlugin = nullptr;
71
74 articulatedObjectReaderPlugin = nullptr;
75
76 struct Properties
77 {
78 float updateFrequency{25.F};
79
80 struct
81 {
82 std::string dataset = "Kitchen";
83 std::string className = "mobile-dishwasher";
84
85 std::string readProviderName = "R003";
86 } obj;
87 } p;
88 };
89
90} // namespace armarx::articulated_object
Baseclass for all ArmarX ManagedIceObjects requiring properties.
Definition Component.h:94
IceUtil::Handle< PeriodicTask< T > > pointer_type
Shared pointer type for convenience.
A component plugin offering client-side access to a reader or writer and manages the lifecycle,...
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
Creates the property definition container.
std::shared_ptr< class Robot > RobotPtr
Definition Bus.h:19
plugins::ListeningPluginUser ComponentPluginUser
Definition plugins.h:10
armarx::core::time::DateTime Time
::IceInternal::ProxyHandle<::IceProxy::armarx::DebugObserverInterface > DebugObserverInterfacePrx
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.