[Interest] Parsing data from serialport

Marian Beermann public at enkore.de
Tue Apr 2 15:19:25 CEST 2019


Why not use QIODevice::readyRead signal and check if a complete line can
be read in the slot?

-Marian

Am 31.03.19 um 21:48 schrieb Martin Marmsoler:
> Hello,
> 
> I'm trying to implement a serial connection with QIODevice (SerialPort).
> I would like to parse line by line (each line consists of multiple
> columns of data) and for this I found canReadLine().
> But as I understand I have to use startTransaction, because otherwise
> the buffer will not be used. I'm I correct?
> 
> |bool QIODevice::canReadLine() const { Q_D(const QIODevice); return
> d->buffer.indexOf('\n', d->buffer.size(), d->isSequential() ?
> d->transactionPos : Q_INT64_C(0)) >= 0; } |
> 
> So to read a full line, I have to open a QSerialPort and then start a
> Transaction. Then I have to wait a little bit (till data is in the
> buffer) and then I can use canReadLine. Am I correct? Is there a better
> way instead to wait a little bit? Or is it the wrong way to go?
> 
> 
> Best regards,
> 
> Martin
> 
> 
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> https://lists.qt-project.org/listinfo/interest
> 




More information about the Interest mailing list