/*===================================================================== QGroundControl Open Source Ground Control Station (c) 2009 - 2011 QGROUNDCONTROL PROJECT This file is part of the QGROUNDCONTROL project QGROUNDCONTROL is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. QGROUNDCONTROL is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with QGROUNDCONTROL. If not, see . ======================================================================*/ /** * @file * @brief Brief Description * * @author Lorenz Meier * */ #ifndef SERIALLINKINTERFACE_H_ #define SERIALLINKINTERFACE_H_ #include #include #include class SerialLinkInterface : public LinkInterface { Q_OBJECT public: virtual QString getPortName() = 0; virtual int getBaudRate() = 0; virtual int getDataBits() = 0; virtual int getStopBits() = 0; virtual int getBaudRateType() = 0; virtual int getFlowType() = 0; virtual int getParityType() = 0; virtual int getDataBitsType() = 0; virtual int getStopBitsType() = 0; public slots: virtual bool setPortName(QString portName) = 0; virtual bool setBaudRate(int rate) = 0; virtual bool setBaudRateType(int rateIndex) = 0; virtual bool setFlowType(int flow) = 0; virtual bool setParityType(int parity) = 0; virtual bool setDataBitsType(int dataBits) = 0; virtual bool setStopBitsType(int stopBits) = 0; virtual void loadSettings() = 0; virtual void writeSettings() = 0; }; /* Declare C++ interface as Qt interface */ //Q_DECLARE_INTERFACE(SerialLinkInterface, "org.openground.comm.links.SerialLinkInterface/1.0") #endif // SERIALLINKINTERFACE_H_