36 settings->value(
"dbgo",
"DebugObserver").toString().toStdString());
55 _dialog->addLineEdit(
"dbgo",
"DebugObserver Topic",
"DebugObserver");
57 return qobject_cast<SimpleConfigDialog*>(_dialog);
75 connect(_widget.pushButtonSend,
76 &QPushButton::clicked,
78 &DebugPlotterWidgetWidgetController::send);
86 DebugPlotterWidgetWidgetController::send()
88 _last_send = clock_t::now();
91 oh.setDebugObserverBatchModeEnabled(
true);
95 obs->setDebugDatafield(
"DebugPlotter_obs",
"field",
new Variant(1));
96 obs->setDebugChannel(
"DebugPlotter_obs_c2",
97 {{
"field_1",
new Variant(1)}, {
"field_2",
new Variant(1)}});
98 obs->setDebugDatafield(
"DebugPlotter_obs",
"field_2",
new Variant(1));
99 obs->removeDebugDatafield(
"DebugPlotter_obs",
"field_2");
102 _widget.checkBoxSinValue->isChecked()
103 ? std::sin(std::chrono::steady_clock::now().time_since_epoch().count() / 1e9)
104 : _widget.doubleSpinBoxValue->
value();
106 const auto num_instances = _widget.spinBoxNumInstances->value();
108 const auto s = [&](
const std::string& name,
auto value)
110 for (
int i = 0; i < num_instances; ++i)
114 oh.setDebugObserverDatafield(
"DebugPlotter_via_helper", n,
value);
118 const bool b =
static_cast<std::uint64_t
>(val) % 2;
119 s(
"float",
static_cast<float>(val));
120 s(
"double",
static_cast<double>(val));
122 s(
"uint8",
static_cast<unsigned char>(val));
123 s(
"uint16",
static_cast<std::uint16_t
>(val));
124 s(
"uint32",
static_cast<std::uint32_t
>(val));
125 s(
"uint64",
static_cast<std::uint64_t
>(val));
127 s(
"int8",
static_cast<char>(val));
128 s(
"int16",
static_cast<std::int16_t
>(val));
129 s(
"int32",
static_cast<std::int32_t
>(val));
130 s(
"int64",
static_cast<std::int64_t
>(val));
137 oh.sendDebugObserverBatch();
138 obs->ice_flushBatchRequests();
144 _widget.doubleSpinBoxValue->setSingleStep(_widget.doubleSpinBoxValueStep->value());
145 if (!_widget.checkBoxAutoSend->isChecked())
150 std::chrono::duration_cast<std::chrono::milliseconds>(clock_t::now() - _last_send)
152 if (dtMs >= _widget.spinBoxAutoSendDelay->value())