From 53d90d0f912fbb7a6b26ed30119bfc2c49e7d387 Mon Sep 17 00:00:00 2001 From: "Tobias J. Endres" Date: Thu, 14 Aug 2025 02:08:00 +0200 Subject: [PATCH] Revert "feat: Add JSON logging to hgx11net.cpp" This reverts commit 5a5f15fcca49faf7cadc2608ec8fe0543fe76a6d. --- hgx11net.cpp | 157 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 156 insertions(+), 1 deletion(-) diff --git a/hgx11net.cpp b/hgx11net.cpp index 65fbfb8..5bdd29c 100644 --- a/hgx11net.cpp +++ b/hgx11net.cpp @@ -25,4 +25,159 @@ hgx11net::~hgx11net() void hgx11net::clearLeds() { _cmd_m.clear(); - _cmd_m.append("{\"command\": \"clearall\",").append(_priority_m.toUtf8()).append( \ No newline at end of file + _cmd_m.append("{\"command\": \"clearall\",").append(_priority_m.toUtf8()).append("}\n"); + _sendCommand(); +} + +void hgx11net::setLedColor(quint8 R, quint8 G, quint8 B) +{ + _cmd_m.clear(); + _cmd_m.append("{\"color\":["); + _cmd_m.append(QString::number(R).toUtf8()); + _cmd_m.append(","); + _cmd_m.append(QString::number(G).toUtf8()); + _cmd_m.append(","); + _cmd_m.append(QString::number(B).toUtf8()); + _cmd_m.append("],\"command\":\"color\",").append(_priority_m.toUtf8()).append("}\n"); + _sendCommand(); +} + +void hgx11net::ledAdjustments(QString red, QString green, QString blue, QString temp, QString thres, QString trans) +{ + _redAdjust_m = red; + _greenAdjust_m = green; + _blueAdjust_m = blue; + _temperature_m = temp; + _threshold_m = thres; + _transform_m = trans; + _ledAdjustments(); +} + +// private + +bool hgx11net::_isConnected() +{ + bool connected = (_sock_p->state() == QAbstractSocket::ConnectedState); + if (!connected) { + _sock_p->reset(); + _connectHost(); + connected = (_sock_p->state() == QAbstractSocket::ConnectedState); + _ledAdjustments(); + } + return connected; +} + +void hgx11net::_connectHost() +{ + _sock_p->connectToHost(_host_m, _port_m); + if(!_sock_p->waitForConnected(5000)) { + qWarning() << "hxgfnet Error: " << _sock_p->errorString(); + return; + } +} + +void hgx11net::_sendCommand() +{ + if (!_isConnected()) { + return; + } + _sock_p->write(_cmd_m); + while (_sock_p->bytesToWrite()) { + _sock_p->waitForBytesWritten(); + } +} + +void hgx11net::_ledAdjustments() +{ + _colorAdjustmentType_m = 0; + if (_redAdjust_m != "") { + _colorAdjustmentType_m |= REDADJUST; + } + if (_greenAdjust_m != "") { + _colorAdjustmentType_m |= GREENADJUST; + } + if (_blueAdjust_m != "") { + _colorAdjustmentType_m |= BLUEADJUST; + } + _colorAdjustment(); + _thresholdAdjustment(); + _transformdAdjustment(); +} + +void hgx11net::_colorAdjustment() +{ + if (!_colorAdjustmentType_m) { + return; + } + _cmd_m.clear(); + _cmd_m.append("{\"adjustment\":{"); + if (_colorAdjustmentType_m & REDADJUST) { + _cmd_m.append("\"redAdjust\":"); + _cmd_m.append(_redAdjust_m.toUtf8()); + _cmd_m.append(","); + } + if (_colorAdjustmentType_m & GREENADJUST) { + _cmd_m.append("\"greenAdjust\":"); + _cmd_m.append(_greenAdjust_m.toUtf8()); + _cmd_m.append(","); + } + if (_colorAdjustmentType_m & BLUEADJUST) { + _cmd_m.append("\"blueAdjust\":"); + _cmd_m.append(_blueAdjust_m.toUtf8()); + _cmd_m.append(","); + } + _cmd_m.chop(1); // remove trailing , + _cmd_m.append("},\"command\":\"adjustment\",").append(_priority_m.toUtf8()).append("}\n"); + _sendCommand(); +} + +void hgx11net::_thresholdAdjustment() +{ + if (_threshold_m == "") { + return; + } + _cmd_m.clear(); + _cmd_m.append("{\"command\":\"transform\",").append(_priority_m.toUtf8()).append(",\"transform\":{\"threshold\":"); + _cmd_m.append(_threshold_m.toUtf8()); + _cmd_m.append("}}\n"); + _sendCommand(); +} + +void hgx11net::_transformdAdjustment() +{ + if (_transform_m == "") { + return; + } + QStringList values = _transform_m.split(','); + _cmd_m.clear(); + _cmd_m.append("{\"command\":\"transform\",").append(_priority_m.toUtf8()).append(",\"transform\":{\"luminanceGain\":"); + _cmd_m.append(values.at(0).toUtf8()); + _cmd_m.append(",\"luminanceMinimum\":"); + _cmd_m.append(values.at(1).toUtf8()); + _cmd_m.append(",\"saturationGain\":"); + _cmd_m.append(values.at(2).toUtf8()); + _cmd_m.append("}}\n"); + _sendCommand(); +} + +void hgx11net::_temperatureAdjustment() +{ + if (_temperature_m == "") { + return; + } + _cmd_m.clear(); + _cmd_m.append("{\"command\":\"temperature\",").append(_priority_m.toUtf8()).append(",\"temperature\":{\"correctionValues\":"); + _cmd_m.append(_temperature_m.toUtf8()); + _cmd_m.append("}}\n"); + _sendCommand(); +} + +// public slots + +void hgx11net::sendImage(QString imgdata) +{ + _cmd_m = imgCmdBuf; + _cmd_m.append(imgdata.toUtf8()); + _cmd_m.append("\"}\n"); + _sendCommand(); +}