integrate wakeup line
This commit is contained in:
parent
f0762e272f
commit
f6238e5a36
@ -13,6 +13,13 @@
|
|||||||
VMC::VMC(QObject *appControl, QSettings const *settings,
|
VMC::VMC(QObject *appControl, QSettings const *settings,
|
||||||
QObject *parent)
|
QObject *parent)
|
||||||
: QObject(parent) {
|
: QObject(parent) {
|
||||||
|
|
||||||
|
this->REMOTE_OUT_gpio_outstream = nullptr;
|
||||||
|
this->REMOTE_OUT_gpio = nullptr;
|
||||||
|
this->sendBuffer = nullptr;
|
||||||
|
this->receiveBuffer = nullptr;
|
||||||
|
this->com_interface = nullptr;
|
||||||
|
|
||||||
this->flag_blockVMCScreen = 0;
|
this->flag_blockVMCScreen = 0;
|
||||||
this->currentCachedScreen = VMC_CMD_SCREEN_START;
|
this->currentCachedScreen = VMC_CMD_SCREEN_START;
|
||||||
|
|
||||||
@ -23,6 +30,8 @@ VMC::VMC(QObject *appControl, QSettings const *settings,
|
|||||||
this->receiveBuffer = new ReceiveBuffer(com_interface, this);
|
this->receiveBuffer = new ReceiveBuffer(com_interface, this);
|
||||||
this->sendBuffer = new SendBuffer(com_interface, this);
|
this->sendBuffer = new SendBuffer(com_interface, this);
|
||||||
|
|
||||||
|
this->privateInit_REMOTE_OUT();
|
||||||
|
|
||||||
connect(receiveBuffer, SIGNAL(ReceiveResponse(quint8)), sendBuffer, SLOT(onReceiveResponse(quint8)));
|
connect(receiveBuffer, SIGNAL(ReceiveResponse(quint8)), sendBuffer, SLOT(onReceiveResponse(quint8)));
|
||||||
|
|
||||||
com_interface->open(settings->value("VMC/serialPort", "ttymxc2").toString(),
|
com_interface->open(settings->value("VMC/serialPort", "ttymxc2").toString(),
|
||||||
@ -41,11 +50,59 @@ VMC::VMC(QObject *appControl, QSettings const *settings,
|
|||||||
|
|
||||||
|
|
||||||
VMC::~VMC() {
|
VMC::~VMC() {
|
||||||
delete(this->sendBuffer);
|
if (this->REMOTE_OUT_gpio_outstream) {
|
||||||
delete(this->receiveBuffer);
|
delete(this->REMOTE_OUT_gpio_outstream);
|
||||||
delete(this->com_interface);
|
}
|
||||||
|
if (this->REMOTE_OUT_gpio) {
|
||||||
|
delete(this->REMOTE_OUT_gpio);
|
||||||
|
}
|
||||||
|
if (this->sendBuffer) {
|
||||||
|
delete(this->sendBuffer);
|
||||||
|
}
|
||||||
|
if (this->receiveBuffer) {
|
||||||
|
delete(this->receiveBuffer);
|
||||||
|
}
|
||||||
|
if (this->com_interface) {
|
||||||
|
delete(this->com_interface);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*****************************************************************************
|
||||||
|
* functions for wake vmc
|
||||||
|
*/
|
||||||
|
|
||||||
|
void VMC::onWakeVMC() {
|
||||||
|
this->privateWakeVMC();
|
||||||
|
}
|
||||||
|
|
||||||
|
void VMC::privateWakeVMC() {
|
||||||
|
QTimer::singleShot (100, this, SLOT(privateSuspendVMC()));
|
||||||
|
this->privateSet_REMOTE_OUT(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
void VMC::privateSuspendVMC() {
|
||||||
|
this->privateSet_REMOTE_OUT(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
void VMC::privateSet_REMOTE_OUT(bool state) {
|
||||||
|
if (state) { *(this->REMOTE_OUT_gpio_outstream) << "1"; }
|
||||||
|
else { *(this->REMOTE_OUT_gpio_outstream) << "0"; }
|
||||||
|
|
||||||
|
this->REMOTE_OUT_gpio_outstream->flush();
|
||||||
|
}
|
||||||
|
|
||||||
|
void VMC::privateInit_REMOTE_OUT() {
|
||||||
|
QString sysfs_remout_out("/sys/class/leds/REMOTE_OUT/brightness");
|
||||||
|
|
||||||
|
this->REMOTE_OUT_gpio = new QFile(sysfs_remout_out);
|
||||||
|
if (!REMOTE_OUT_gpio->open(QIODevice::WriteOnly | QIODevice::Text)) {
|
||||||
|
qDebug() << "ATB_system::privateInit_REMOTE_OUT() cannot open file: " << sysfs_remout_out;
|
||||||
|
qDebug() << " file.errorString() = " << REMOTE_OUT_gpio->errorString();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
this->REMOTE_OUT_gpio_outstream = new QTextStream(this->REMOTE_OUT_gpio);
|
||||||
|
}
|
||||||
|
|
||||||
/********************************************************************************
|
/********************************************************************************
|
||||||
* S E N D M E S S A G E S t o V M C
|
* S E N D M E S S A G E S t o V M C
|
||||||
|
@ -11,6 +11,8 @@
|
|||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSettings>
|
#include <QSettings>
|
||||||
|
#include <QFile>
|
||||||
|
#include <QTextStream>
|
||||||
|
|
||||||
|
|
||||||
#define VMC_RECEIVE_TIMEOUT 1000
|
#define VMC_RECEIVE_TIMEOUT 1000
|
||||||
@ -147,11 +149,8 @@ class SendBuffer;
|
|||||||
using FormatedStringList = QList<QByteArray>;
|
using FormatedStringList = QList<QByteArray>;
|
||||||
|
|
||||||
|
|
||||||
class VMC : public QObject
|
class VMC : public QObject {
|
||||||
{
|
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QObject *m_appControl;
|
QObject *m_appControl;
|
||||||
COM_interface *com_interface;
|
COM_interface *com_interface;
|
||||||
@ -159,6 +158,9 @@ private:
|
|||||||
SendBuffer *sendBuffer;
|
SendBuffer *sendBuffer;
|
||||||
QSettings const *m_settings;
|
QSettings const *m_settings;
|
||||||
|
|
||||||
|
QFile *REMOTE_OUT_gpio;
|
||||||
|
QTextStream *REMOTE_OUT_gpio_outstream;
|
||||||
|
|
||||||
// internal: write a ByteArray to com-port:
|
// internal: write a ByteArray to com-port:
|
||||||
int SendMessage(QByteArray ba, bool enqueue = false);
|
int SendMessage(QByteArray ba, bool enqueue = false);
|
||||||
|
|
||||||
@ -185,10 +187,14 @@ private:
|
|||||||
quint8 flag_blockVMCScreen;
|
quint8 flag_blockVMCScreen;
|
||||||
quint16 currentCachedScreen;
|
quint16 currentCachedScreen;
|
||||||
|
|
||||||
|
void privateInit_REMOTE_OUT();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void onDelayedMessageTimerTimeout();
|
void onDelayedMessageTimerTimeout();
|
||||||
|
|
||||||
void skipDiscount();
|
void skipDiscount();
|
||||||
|
void privateSet_REMOTE_OUT(bool state);
|
||||||
|
void privateWakeVMC();
|
||||||
|
void privateSuspendVMC();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit VMC(QObject *eventReceiver, QSettings const *settings,
|
explicit VMC(QObject *eventReceiver, QSettings const *settings,
|
||||||
@ -387,6 +393,8 @@ public slots:
|
|||||||
void ccStartTransactionRequest(); // called to start/restart a CC transaction
|
void ccStartTransactionRequest(); // called to start/restart a CC transaction
|
||||||
void ccStartConfirmTransaction(); // called to start confirmation
|
void ccStartConfirmTransaction(); // called to start confirmation
|
||||||
void ccPrintReceipt(QString receipt); // called to send receipt to vmc
|
void ccPrintReceipt(QString receipt); // called to send receipt to vmc
|
||||||
|
|
||||||
|
void onWakeVMC();
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // VMC_H
|
#endif // VMC_H
|
||||||
|
Loading…
Reference in New Issue
Block a user