PersonInstanceUpdater.h
Go to the documentation of this file.
1 /**
2  * This file is part of ArmarX.
3  *
4  * ArmarX is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation.
7  *
8  * ArmarX is distributed in the hope that it will be useful, but
9  * WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * @package VisionX::ArmarXObjects::person_instance_updater
17  * @author Philipp Seidel ( uyhvq at student dot kit dot edu )
18  * @date 2023
19  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
20  * GNU General Public License
21  */
22 
23 
24 #pragma once
25 
26 
29 
31 
33 
35 {
36 
38  virtual public armarx::Component,
40  {
41  public:
42  /// @see armarx::ManagedIceObject::getDefaultName()
43  std::string getDefaultName() const override;
44 
45  /// Get the component's default name.
46  static std::string GetDefaultName();
47 
48  public:
49  static const std::string provider_name;
50 
51  protected:
52  /// @see PropertyUser::createPropertyDefinitions()
54 
55  /// @see armarx::ManagedIceObject::onInitComponent()
56  void onInitComponent() override;
57 
58  /// @see armarx::ManagedIceObject::onConnectComponent()
59  void onConnectComponent() override;
60 
61  /// @see armarx::ManagedIceObject::onDisconnectComponent()
62  void onDisconnectComponent() override;
63 
64  /// @see armarx::ManagedIceObject::onExitComponent()
65  void onExitComponent() override;
66 
67  private:
68  void run();
69 
70  private:
72 
73  /// Properties shown in the Scenario GUI.
74  struct Properties
75  {
76  int max_face_head_distance;
77  };
78 
79  Properties properties;
80  UpdateConsumer updateConsumer;
81  };
82 
83 } // namespace VisionX::components::person_instance_updater
VisionX::components::person_instance_updater::UpdateConsumer
Definition: UpdateConsumer.h:13
VisionX::components::person_instance_updater::PersonInstanceUpdater::onDisconnectComponent
void onDisconnectComponent() override
Definition: PersonInstanceUpdater.cpp:71
VisionX::components::person_instance_updater::PersonInstanceUpdater::provider_name
static const std::string provider_name
Definition: PersonInstanceUpdater.h:49
VisionX::components::person_instance_updater::PersonInstanceUpdater::onInitComponent
void onInitComponent() override
Definition: PersonInstanceUpdater.cpp:58
VisionX::components::person_instance_updater::PersonInstanceUpdater
Definition: PersonInstanceUpdater.h:37
VisionX::components::person_instance_updater
Definition: PersonInstanceUpdater.cpp:43
TaskUtil.h
VisionX::components::person_instance_updater::PersonInstanceUpdater::createPropertyDefinitions
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
Definition: PersonInstanceUpdater.cpp:49
Component.h
armarx::Component
Baseclass for all ArmarX ManagedIceObjects requiring properties.
Definition: Component.h:95
UpdateConsumer.h
IceUtil::Handle< class PropertyDefinitionContainer >
VisionX::components::person_instance_updater::PersonInstanceUpdater::getDefaultName
std::string getDefaultName() const override
Definition: PersonInstanceUpdater.cpp:158
armarx::armem::client::plugins::ListeningPluginUser
A memory name system client which listens to the memory updates topic (MemoryListenerInterface).
Definition: ListeningPluginUser.h:23
VisionX::components::person_instance_updater::PersonInstanceUpdater::onExitComponent
void onExitComponent() override
Definition: PersonInstanceUpdater.cpp:76
VisionX::components::person_instance_updater::PersonInstanceUpdater::onConnectComponent
void onConnectComponent() override
Definition: PersonInstanceUpdater.cpp:64
ListeningPluginUser.h
VisionX::components::person_instance_updater::PersonInstanceUpdater::GetDefaultName
static std::string GetDefaultName()
Get the component's default name.
Definition: PersonInstanceUpdater.cpp:164