From ecf23230019643d430b3fe6cbd14e62055b384d9 Mon Sep 17 00:00:00 2001 From: Christoph Pohl <christoph.pohl@kit.edu> Date: Fri, 23 Jun 2023 13:43:54 +0200 Subject: [PATCH] Add debugging traces --- .../RemoteGuiPlugin/RemoteGuiWidgetController.cpp | 5 +++++ source/ArmarXGui/libraries/RemoteGui/Storage.h | 8 ++++++++ source/ArmarXGui/libraries/RemoteGui/TypedWidget.h | 3 +++ .../libraries/RemoteGui/WidgetHandlers/BoolWidgets.h | 2 ++ .../libraries/RemoteGui/WidgetHandlers/FloatWidgets.h | 2 ++ .../libraries/RemoteGui/WidgetHandlers/IntegerWidgets.h | 3 +++ .../libraries/RemoteGui/WidgetHandlers/LayoutWidgets.h | 6 ++++++ .../libraries/RemoteGui/WidgetHandlers/Matrix4fWidgets.h | 1 + .../libraries/RemoteGui/WidgetHandlers/StaticWidgets.h | 6 ++++++ .../libraries/RemoteGui/WidgetHandlers/StringWidgets.h | 6 +++++- .../libraries/RemoteGui/WidgetHandlers/Vector3fWidgets.h | 1 + source/ArmarXGui/libraries/RemoteGui/WidgetRegister.cpp | 1 + 12 files changed, 43 insertions(+), 1 deletion(-) diff --git a/source/ArmarXGui/gui-plugins/RemoteGuiPlugin/RemoteGuiWidgetController.cpp b/source/ArmarXGui/gui-plugins/RemoteGuiPlugin/RemoteGuiWidgetController.cpp index a0d96940..be06ffa0 100644 --- a/source/ArmarXGui/gui-plugins/RemoteGuiPlugin/RemoteGuiWidgetController.cpp +++ b/source/ArmarXGui/gui-plugins/RemoteGuiPlugin/RemoteGuiWidgetController.cpp @@ -524,6 +524,7 @@ namespace armarx QWidget* RemoteGuiWidgetController::createWidgetFromDescription(const std::string& tabId, const RemoteGui::WidgetPtr& desc) { + ARMARX_TRACE; QWidget* widget = nullptr; RemoteGui::ValueMap& values = tabValueMap[tabId]; @@ -532,10 +533,12 @@ namespace armarx RemoteGui::CreateWidgetCallback createChild = [this, tabId](RemoteGui::WidgetPtr const & desc) -> QWidget * { + ARMARX_TRACE; return this->createWidgetFromDescription(tabId, desc); }; { + ARMARX_TRACE; // Do not trigger external updates when initial values are set InternalUpdateGuard guard(&internalUpdate); @@ -551,6 +554,7 @@ namespace armarx // Widgets without a name cannot be referred to later if (!desc->name.empty()) { + ARMARX_TRACE; auto result = guiWidgets[tabId].emplace(desc->name, widget); bool inserted = result.second; if (inserted) @@ -560,6 +564,7 @@ namespace armarx } else { + ARMARX_TRACE; ARMARX_WARNING << "Tried to add a widget with duplicate name '" << desc->name << "' to remote tab ID '" << tabId << "'"; } diff --git a/source/ArmarXGui/libraries/RemoteGui/Storage.h b/source/ArmarXGui/libraries/RemoteGui/Storage.h index 027bdac4..ec2df335 100644 --- a/source/ArmarXGui/libraries/RemoteGui/Storage.h +++ b/source/ArmarXGui/libraries/RemoteGui/Storage.h @@ -81,12 +81,14 @@ namespace armarx::RemoteGui template <> inline std::nullptr_t getSingleValue<std::nullptr_t>(RemoteGui::ValueVariant const& value, const std::string& name) { + ARMARX_TRACE; return nullptr; } template <> inline bool getSingleValue<bool>(ValueVariant const& value, const std::string& name) { + ARMARX_TRACE; if (value.type != VALUE_VARIANT_BOOL) { throw LocalException() @@ -99,6 +101,7 @@ namespace armarx::RemoteGui template <> inline int getSingleValue<int>(ValueVariant const& value, const std::string& name) { + ARMARX_TRACE; if (value.type != VALUE_VARIANT_INT) { throw LocalException() @@ -111,6 +114,7 @@ namespace armarx::RemoteGui template <> inline float getSingleValue<float>(ValueVariant const& value, const std::string& name) { + ARMARX_TRACE; if (value.type != VALUE_VARIANT_FLOAT) { throw LocalException() @@ -123,6 +127,7 @@ namespace armarx::RemoteGui template <> inline std::string getSingleValue<std::string>(ValueVariant const& value, const std::string& name) { + ARMARX_TRACE; if (value.type != VALUE_VARIANT_STRING) { throw LocalException() @@ -135,6 +140,7 @@ namespace armarx::RemoteGui template <> inline Eigen::Vector3f getSingleValue<Eigen::Vector3f>(ValueVariant const& value, const std::string& name) { + ARMARX_TRACE; if (value.type != VALUE_VARIANT_VECTOR3) { throw LocalException() @@ -153,6 +159,7 @@ namespace armarx::RemoteGui template <> inline Eigen::Matrix4f getSingleValue<Eigen::Matrix4f>(ValueVariant const& value, const std::string& name) { + ARMARX_TRACE; if (value.type != VALUE_VARIANT_MATRIX4) { throw LocalException() @@ -176,6 +183,7 @@ namespace armarx::RemoteGui template <typename T> T getAndReturnValue(ValueMap const& values, std::string const& name) { + ARMARX_TRACE; try { ValueVariant const& variantValue = values.at(name); diff --git a/source/ArmarXGui/libraries/RemoteGui/TypedWidget.h b/source/ArmarXGui/libraries/RemoteGui/TypedWidget.h index 449d6cd0..55a4b8f2 100644 --- a/source/ArmarXGui/libraries/RemoteGui/TypedWidget.h +++ b/source/ArmarXGui/libraries/RemoteGui/TypedWidget.h @@ -46,6 +46,7 @@ namespace armarx::RemoteGui const QObject* stateChangeReceiver, const char* stateChangeSlot) const override { + ARMARX_TRACE; auto concreteDesc = dynamic_cast<RemoteWidgetT const*>(&desc); ARMARX_CHECK_EXPRESSION(concreteDesc != nullptr); @@ -65,6 +66,7 @@ namespace armarx::RemoteGui QWidget* widget, ValueVariant const& value) const override { + ARMARX_TRACE; auto concreteDesc = dynamic_cast<RemoteWidgetT const*>(&desc); ARMARX_CHECK_EXPRESSION(concreteDesc != nullptr); @@ -81,6 +83,7 @@ namespace armarx::RemoteGui virtual ValueVariant handleGuiChange(Widget const& desc, QWidget* widget) const override { + ARMARX_TRACE; ARMARX_CHECK_EXPRESSION(widget != nullptr); const auto dumpParamInfo = ARMARX_STREAM_PRINTER { diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/BoolWidgets.h b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/BoolWidgets.h index 35126f04..c5646eba 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/BoolWidgets.h +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/BoolWidgets.h @@ -12,6 +12,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setToolTip(QString::fromStdString(desc.toolTip)); widget->setText(toQString(desc.label)); @@ -37,6 +38,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setToolTip(QString::fromStdString(desc.toolTip)); widget->setText(toQString(desc.label)); diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/FloatWidgets.h b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/FloatWidgets.h index 4e350b84..b2357322 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/FloatWidgets.h +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/FloatWidgets.h @@ -31,6 +31,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setToolTip(QString::fromStdString(desc.toolTip)); @@ -74,6 +75,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(nullptr); widget->setToolTip(QString::fromStdString(desc.toolTip)); diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/IntegerWidgets.h b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/IntegerWidgets.h index 5b887785..9b6d5fe8 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/IntegerWidgets.h +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/IntegerWidgets.h @@ -13,6 +13,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setToolTip(QString::fromStdString(desc.toolTip)); @@ -40,6 +41,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setToolTip(QString::fromStdString(desc.toolTip)); @@ -69,6 +71,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setToolTip(QString::fromStdString(desc.toolTip)); widget->setText(toQString(desc.label)); diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/LayoutWidgets.h b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/LayoutWidgets.h index 94bb57cc..80e68ebb 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/LayoutWidgets.h +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/LayoutWidgets.h @@ -14,6 +14,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QGroupBox* widget = new QGroupBox; widget->setTitle(toQString(desc.label)); widget->setCheckable(true); @@ -64,6 +65,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidget(); QVBoxLayout* layout = new QVBoxLayout(widget); @@ -84,6 +86,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidget(); QHBoxLayout* layout = new QHBoxLayout(widget); @@ -103,6 +106,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; ARMARX_CHECK_GREATER(desc.columns, 0); switch (desc.children.size()) { @@ -133,6 +137,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidget(); QGridLayout* layout = new QGridLayout(widget); @@ -172,6 +177,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidget(); QGridLayout* layout = new QGridLayout(widget); diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/Matrix4fWidgets.h b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/Matrix4fWidgets.h index d7948ddc..cb701e87 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/Matrix4fWidgets.h +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/Matrix4fWidgets.h @@ -46,6 +46,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidget* widget = new QWidget; QHBoxLayout* l = new QHBoxLayout; l->setContentsMargins(0, 0, 0, 0); diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/StaticWidgets.h b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/StaticWidgets.h index f2b41c2b..9b8d4e86 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/StaticWidgets.h +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/StaticWidgets.h @@ -11,6 +11,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); widget->setToolTip(QString::fromStdString(desc.toolTip)); @@ -33,6 +34,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidget(); widget->setLayout(new QVBoxLayout); @@ -48,6 +50,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidget(); widget->setLayout(new QVBoxLayout); @@ -63,6 +66,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QFrame(); widget->setFrameShape(QFrame::HLine); @@ -76,6 +80,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QFrame(); widget->setFrameShape(QFrame::VLine); @@ -90,6 +95,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; auto widget = new QWidget(); widget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed); return widget; diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/StringWidgets.h b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/StringWidgets.h index b0579e1e..db9cacbb 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/StringWidgets.h +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/StringWidgets.h @@ -12,6 +12,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setToolTip(QString::fromStdString(desc.toolTip)); @@ -36,14 +37,16 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidgetT* widget = new QWidgetT(); widget->setToolTip(QString::fromStdString(desc.toolTip)); for (std::string const& option : desc.options) { + ARMARX_TRACE; widget->addItem(toQString(option)); } - + ARMARX_TRACE; QObject::connect(widget, SIGNAL(currentIndexChanged(int)), stateChangeReceiver, stateChangeSlot); return widget; @@ -51,6 +54,7 @@ namespace armarx::RemoteGui static void updateGui(RemoteWidgetT const& desc, QWidgetT* widget, ValueT const& value) { + ARMARX_TRACE; int index = widget->findText(toQString(value)); if (index >= 0) { diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/Vector3fWidgets.h b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/Vector3fWidgets.h index b89dc050..ff00a060 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/Vector3fWidgets.h +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetHandlers/Vector3fWidgets.h @@ -35,6 +35,7 @@ namespace armarx::RemoteGui static QWidgetT* createWidget(RemoteWidgetT const& desc, CreateWidgetCallback const& createChild, const QObject* stateChangeReceiver, const char* stateChangeSlot) { + ARMARX_TRACE; QWidget* widget = new QWidget; widget->setToolTip(QString::fromStdString(desc.toolTip)); QHBoxLayout* l = new QHBoxLayout; diff --git a/source/ArmarXGui/libraries/RemoteGui/WidgetRegister.cpp b/source/ArmarXGui/libraries/RemoteGui/WidgetRegister.cpp index eec0a9fc..57fd368c 100644 --- a/source/ArmarXGui/libraries/RemoteGui/WidgetRegister.cpp +++ b/source/ArmarXGui/libraries/RemoteGui/WidgetRegister.cpp @@ -59,6 +59,7 @@ namespace armarx::RemoteGui const WidgetHandler& getWidgetHandler(WidgetPtr const& desc) { + ARMARX_TRACE; static const WidgetRegister widgetRegister = createWidgetRegister(); auto descPtr = desc.get(); -- GitLab