ObjectLocalizationRequesterWidgetController.h
Go to the documentation of this file.
1 /*
2  * This file is part of ArmarX.
3  *
4  * Copyright (C) 2012-2016, High Performance Humanoid Technologies (H2T), Karlsruhe Institute of Technology (KIT), all rights reserved.
5  *
6  * ArmarX is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  *
10  * ArmarX is distributed in the hope that it will be useful, but
11  * WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program. If not, see <http://www.gnu.org/licenses/>.
17  *
18  * @package VisionX::gui-plugins::ObjectLocalizationRequesterWidgetController
19  * @author Mirko Waechter ( mirko dot waechter at kit dot edu )
20  * @date 2015
21  * @copyright http://www.gnu.org/licenses/gpl-2.0.txt
22  * GNU General Public License
23  */
24 
25 #pragma once
26 
27 #include <QToolBar>
28 
30 
33 
34 #include <MemoryX/gui-plugins/ObjectLocalizationRequester/ui_ObjectLocalizationRequesterWidget.h>
35 #include <MemoryX/interface/components/PriorKnowledgeInterface.h>
36 #include <MemoryX/interface/observers/ObjectMemoryObserverInterface.h>
37 
38 namespace armarx
39 {
40  /**
41  \page MemoryX-GuiPlugins-ObjectLocalizationRequester ObjectLocalizationRequester
42  \brief The ObjectLocalizationRequester allows triggering and releasing of localization requests of specific objects.
43 
44  The user can select from the currently available object classes with an assigned recongition method and request them with a specified update frequency.
45  The user can also list all currently running localization requests and delete them.
46 
47  API Documentation \ref ObjectLocalizationRequesterWidgetController
48 
49  \see ObjectLocalizationRequesterGuiPlugin
50  */
51 
52  /**
53  * \class ObjectLocalizationRequesterWidgetController
54  * \brief ObjectLocalizationRequesterWidgetController brief one line description
55  *
56  * Detailed description
57  */
59  public ArmarXComponentWidgetControllerTemplate<ObjectLocalizationRequesterWidgetController>
60  {
61  Q_OBJECT
62 
63  public:
64  /**
65  * Controller Constructor
66  */
68 
69  /**
70  * Controller destructor
71  */
73 
74  /**
75  * @see ArmarXWidgetController::loadSettings()
76  */
77  void loadSettings(QSettings* settings) override;
78 
79  /**
80  * @see ArmarXWidgetController::saveSettings()
81  */
82  void saveSettings(QSettings* settings) override;
83 
84  /**
85  * Returns the Widget name displayed in the ArmarXGui to create an
86  * instance of this class.
87  */
88  static QString
90  {
91  return "MemoryX.ObjectLocalizationRequester";
92  }
93 
94  /**
95  * \see armarx::Component::onInitComponent()
96  */
97  void onInitComponent() override;
98 
99  /**
100  * \see armarx::Component::onConnectComponent()
101  */
102  void onConnectComponent() override;
103  void onDisconnectComponent() override;
104 
105  public slots:
106  /* QT slot declarations */
107  void updateAvailableObjects();
108  void updateAvailableChannels();
109 
110  signals:
111  /* QT signal declarations */
112 
113  private slots:
114  void on_toolButtonRefresh_clicked();
115 
116  void on_btnRequest_clicked();
117 
118  void on_btnRelease_clicked();
119 
120  private:
121  /**
122  * Widget Form
123  */
124  Ui::ObjectLocalizationRequesterWidget widget;
125 
126  memoryx::PriorKnowledgeInterfacePrx prior;
127  memoryx::ObjectMemoryObserverInterfacePrx omo;
128  ChannelRegistry channels;
129  QToolBar* customToolbar;
130  // ArmarXWidgetController interface
131  public:
132  QPointer<QWidget> getCustomTitlebarWidget(QWidget* parent) override;
133  };
134 } // namespace armarx
armarx::ObjectLocalizationRequesterWidgetController::GetWidgetName
static QString GetWidgetName()
Returns the Widget name displayed in the ArmarXGui to create an instance of this class.
Definition: ObjectLocalizationRequesterWidgetController.h:89
armarx::ArmarXComponentWidgetControllerTemplate
Definition: ArmarXComponentWidgetController.h:69
ArmarXGuiPlugin.h
ArmarXComponentWidgetController.h
ARMARXCOMPONENT_IMPORT_EXPORT
#define ARMARXCOMPONENT_IMPORT_EXPORT
Definition: ImportExportComponent.h:38
armarx::ObjectLocalizationRequesterWidgetController
ObjectLocalizationRequesterWidgetController brief one line description.
Definition: ObjectLocalizationRequesterWidgetController.h:58
armarx
This file offers overloads of toIce() and fromIce() functions for STL container types.
Definition: ArmarXTimeserver.cpp:27
ImportExportComponent.h