use the USB mode to determine connection state
This commit is contained in:
parent
c2f1dcce07
commit
a355edd722
|
@ -26,9 +26,7 @@
|
||||||
DmxWidget::DmxWidget(QObject *parent)
|
DmxWidget::DmxWidget(QObject *parent)
|
||||||
: QObject{parent}
|
: QObject{parent}
|
||||||
, port_(new QSerialPort(this))
|
, port_(new QSerialPort(this))
|
||||||
, connected_(false)
|
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -42,10 +40,8 @@ void DmxWidget::open()
|
||||||
{
|
{
|
||||||
if (!port_->open(QIODeviceBase::ReadWrite))
|
if (!port_->open(QIODeviceBase::ReadWrite))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ENTTEC::Widget::open();
|
ENTTEC::Widget::open();
|
||||||
connected_ = true;
|
emit connectedChanged(isConnected());
|
||||||
emit connectedChanged(true);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -53,9 +49,7 @@ void DmxWidget::close()
|
||||||
{
|
{
|
||||||
port_->close();
|
port_->close();
|
||||||
ENTTEC::Widget::close();
|
ENTTEC::Widget::close();
|
||||||
|
emit connectedChanged(isConnected());
|
||||||
connected_ = false;
|
|
||||||
emit connectedChanged(false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -58,8 +58,6 @@ public:
|
||||||
virtual void open() override;
|
virtual void open() override;
|
||||||
virtual void close() override;
|
virtual void close() override;
|
||||||
|
|
||||||
bool isConnected() const { return connected_; }
|
|
||||||
|
|
||||||
void setPort(const QSerialPortInfo &port) { port_->setPort(port); emit portNameChanged(); }
|
void setPort(const QSerialPortInfo &port) { port_->setPort(port); emit portNameChanged(); }
|
||||||
void setPortName(const QString &name) { port_->setPortName(name); emit portNameChanged(); }
|
void setPortName(const QString &name) { port_->setPortName(name); emit portNameChanged(); }
|
||||||
const QString portName() const { return port_->portName(); }
|
const QString portName() const { return port_->portName(); }
|
||||||
|
@ -79,7 +77,6 @@ signals:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QSerialPort *port_;
|
QSerialPort *port_;
|
||||||
bool connected_;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
Q_DECLARE_OPERATORS_FOR_FLAGS(DmxWidget::RxErrors)
|
Q_DECLARE_OPERATORS_FOR_FLAGS(DmxWidget::RxErrors)
|
||||||
|
|
|
@ -31,8 +31,8 @@ Widget::Widget()
|
||||||
, tx_break_intervals(17) // 181.4 us by default
|
, tx_break_intervals(17) // 181.4 us by default
|
||||||
, tx_mab_intervals(10) // 106.7 us by default
|
, tx_mab_intervals(10) // 106.7 us by default
|
||||||
, tx_rate(40) // 40 packets/s, by default
|
, tx_rate(40) // 40 packets/s, by default
|
||||||
, rx_update_mode_(Pro::RxNotifyAlways)
|
|
||||||
, usb_mode_(USBunknown)
|
, usb_mode_(USBunknown)
|
||||||
|
, rx_update_mode_(Pro::RxNotifyAlways)
|
||||||
, token_data_changed_(nullptr)
|
, token_data_changed_(nullptr)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,6 +48,11 @@ public:
|
||||||
virtual void halt(); //!< USB Device stop
|
virtual void halt(); //!< USB Device stop
|
||||||
virtual void open(); //!< USB Host start
|
virtual void open(); //!< USB Host start
|
||||||
virtual void close(); //!< USB Host stop
|
virtual void close(); //!< USB Host stop
|
||||||
|
/**
|
||||||
|
* @brief isConnected
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
bool isConnected() const { return usb_mode_ != USBunknown; }
|
||||||
|
|
||||||
virtual void setModeController();
|
virtual void setModeController();
|
||||||
virtual void setModeBridge(Pro::DMX_RX_MODE = Pro::RxNotifyAlways);
|
virtual void setModeBridge(Pro::DMX_RX_MODE = Pro::RxNotifyAlways);
|
||||||
|
@ -109,13 +114,12 @@ private:
|
||||||
void rxMsgGetWidgetSerialReply(std::shared_ptr<Pro::MsgGetWidgetSerialReply>);
|
void rxMsgGetWidgetSerialReply(std::shared_ptr<Pro::MsgGetWidgetSerialReply>);
|
||||||
void rxMsgSendRDMDiscovery(std::shared_ptr<Pro::MsgSendRDMDiscovery>);
|
void rxMsgSendRDMDiscovery(std::shared_ptr<Pro::MsgSendRDMDiscovery>);
|
||||||
|
|
||||||
Pro::DMX_RX_MODE rx_update_mode_;
|
|
||||||
|
|
||||||
enum OperatingModes {
|
enum OperatingModes {
|
||||||
USBunknown,
|
USBunknown,
|
||||||
USBhost,
|
USBhost,
|
||||||
USBdevice
|
USBdevice
|
||||||
} usb_mode_;
|
} usb_mode_;
|
||||||
|
Pro::DMX_RX_MODE rx_update_mode_;
|
||||||
|
|
||||||
mutable std::mutex mtx_metadata_;
|
mutable std::mutex mtx_metadata_;
|
||||||
std::shared_ptr<void> token_data_changed_;
|
std::shared_ptr<void> token_data_changed_;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user