use queued connections for all device signals
This commit is contained in:
parent
a5e837076b
commit
0539dea4ef
@ -122,30 +122,30 @@ VirtualDevice::VirtualDevice(QString serial)
|
|||||||
// just acting as a wrapper for device, pass on signals
|
// just acting as a wrapper for device, pass on signals
|
||||||
auto dev = new Device(serial);
|
auto dev = new Device(serial);
|
||||||
devices.push_back(dev);
|
devices.push_back(dev);
|
||||||
connect(dev, &Device::ConnectionLost, this, &VirtualDevice::ConnectionLost);
|
connect(dev, &Device::ConnectionLost, this, &VirtualDevice::ConnectionLost, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::DeviceInfoUpdated, [=](){
|
connect(dev, &Device::DeviceInfoUpdated, this, [=](){
|
||||||
info = Info(devices[0]);
|
info = Info(devices[0]);
|
||||||
emit InfoUpdated();
|
emit InfoUpdated();
|
||||||
});
|
}, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::LogLineReceived, this, &VirtualDevice::LogLineReceived);
|
connect(dev, &Device::LogLineReceived, this, &VirtualDevice::LogLineReceived, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::DeviceStatusUpdated, [=](){
|
connect(dev, &Device::DeviceStatusUpdated, this, [=](){
|
||||||
status = Status(devices[0]);
|
status = Status(devices[0]);
|
||||||
emit StatusUpdated(status);
|
emit StatusUpdated(status);
|
||||||
});
|
}, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::NeedsFirmwareUpdate, this, &VirtualDevice::NeedsFirmwareUpdate);
|
connect(dev, &Device::NeedsFirmwareUpdate, this, &VirtualDevice::NeedsFirmwareUpdate, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::SpectrumResultReceived, this, &VirtualDevice::singleSpectrumResultReceived);
|
connect(dev, &Device::SpectrumResultReceived, this, &VirtualDevice::singleSpectrumResultReceived, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::DatapointReceived, this, &VirtualDevice::singleDatapointReceived);
|
connect(dev, &Device::DatapointReceived, this, &VirtualDevice::singleDatapointReceived, Qt::QueuedConnection);
|
||||||
} else {
|
} else {
|
||||||
// Connect to the actual devices
|
// Connect to the actual devices
|
||||||
for(auto devSerial : cdev->deviceSerials) {
|
for(auto devSerial : cdev->deviceSerials) {
|
||||||
auto dev = new Device(devSerial);
|
auto dev = new Device(devSerial);
|
||||||
devices.push_back(dev);
|
devices.push_back(dev);
|
||||||
// Create device connections
|
// Create device connections
|
||||||
connect(dev, &Device::ConnectionLost, this, &VirtualDevice::ConnectionLost);
|
connect(dev, &Device::ConnectionLost, this, &VirtualDevice::ConnectionLost, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::NeedsFirmwareUpdate, this, &VirtualDevice::NeedsFirmwareUpdate);
|
connect(dev, &Device::NeedsFirmwareUpdate, this, &VirtualDevice::NeedsFirmwareUpdate, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::LogLineReceived, [=](QString line){
|
connect(dev, &Device::LogLineReceived, this, [=](QString line){
|
||||||
emit LogLineReceived(line.prepend(dev->serial()+": "));
|
emit LogLineReceived(line.prepend(dev->serial()+": "));
|
||||||
});
|
}, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::DeviceInfoUpdated, this, &VirtualDevice::compoundInfoUpdated, Qt::QueuedConnection);
|
connect(dev, &Device::DeviceInfoUpdated, this, &VirtualDevice::compoundInfoUpdated, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::DeviceStatusUpdated, this, &VirtualDevice::compoundStatusUpdated, Qt::QueuedConnection);
|
connect(dev, &Device::DeviceStatusUpdated, this, &VirtualDevice::compoundStatusUpdated, Qt::QueuedConnection);
|
||||||
connect(dev, &Device::DatapointReceived, this, &VirtualDevice::compoundDatapointReceivecd, Qt::QueuedConnection);
|
connect(dev, &Device::DatapointReceived, this, &VirtualDevice::compoundDatapointReceivecd, Qt::QueuedConnection);
|
||||||
|
Loading…
Reference in New Issue
Block a user