Подскажите пожалуйста как сделать прием данных с  одновременным приемом с n-ым  количеством соm портов.
Если можете привести код был бы благодарен.
Проблема в том что я хочу все актион  связать с 1 слотом для чтения  данных.   Если делаю два соединения то в дебаге отображаются только данные последнего соединения.
привожу код:
В mainwindow. h объявил  
  ConnectionCom *sPort;  /экземпляр класса ConnectionCom мой класс
Код ConnectionCom 
  QSerialPort *serialPort; в ConnectionCom.h
 
Код ConnectionCom.cpp
bool ConnectionCom::OpenConCom(QString port, int baudrate, int bits, QString parity, int stopBits, QString flowControl, bool CTS_RTS){
               serialPort=new QSerialPort();
               serialPort->setPortName(port);
               serialPort->setBaudRate(baudrate);
               serialPort->setDataBits(QSerialPort::Data8);
               serialPort->setParity(QSerialPort::NoParity);
               serialPort->setStopBits(QSerialPort::OneStop);
               serialPort->setFlowControl(QSerialPort::NoFlowControl);
               if(CTS_RTS==true){
                   serialPort->setRequestToSend(true);
                   serialPort->setDataTerminalReady(true);
               }
               serialPort->open(QIODevice::ReadOnly);
               if(serialPort->isOpen()){
                   return  true;
               }else{
                   return false;
               }
}
В mainwindow.cpp делаю коннекты action со слотом
    connect(ui->actionSwelab_Alfa_1, SIGNAL(triggered()), this, SLOT(ComPortConnection()));
    connect(ui->actionSwelab_Alfa_2, SIGNAL(triggered()), this, SLOT(ComPortConnection()));
Слот ComPortConnection
void MainWindow::ComPortConnection(){
       QString port;
    static  QList<QString> data;
    if(QObject::sender()->objectName()=="actionSwelab_Alfa_1"){
           port="COM1";
           analizator="Swelab";
           data.append(port);
     }
     if(QObject::sender()->objectName()=="actionSwelab_Alfa_2"){
           port="COM3";
           analizator="Swelab";
            data.append(port);
     }
     if(QObject::sender()->objectName()=="actionMeldonic_1"){
           port="COM6";
           analizator="Medonic";
   data.append(port);
     }
     if(QObject::sender()->objectName()=="actionUrit_3020"){
          analizator="Urit3020";
          port="COM6";
          data.append(port);
     }
     sPort=new ConnectionCom();
       if(sPort->OpenConCom(port, 9600, 8,"none", 1, "none", false)==true){
             connect(sPort->serialPort,SIGNAL(readyRead()),this,SLOT(ReadDataSerial()));   //коннект для приема данных с ком порта.
       }
}
Код ReadDataSerial()
void MainWindow::ReadDataSerial(){
          QString byte;
          qDebug()<<sPort->serialPort->portName();
       //выводятся данные  только с com porta к которому подсоединился последним.
}
Подскажите плиз. Думаю проблема в экземпляре класса, скорее всего он перезаписывается. Но если я создаю объект внутри ComPortConnection, то он становится не видимым, в поле действия функции, т.е в ReadDataSerial  я не могу вывести  sPort->serialPort->portName(). так как объект не доступен. Я только новичок, не ругайте сильно 

 подскажите плиз!!1