SerialLinkInterface.h 2.3 KB
Newer Older
pixhawk's avatar
pixhawk committed
1
/*=====================================================================
pixhawk's avatar
pixhawk committed
2 3 4 5 6 7 8 9

QGroundControl Open Source Ground Control Station

(c) 2009 - 2011 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>

This file is part of the QGROUNDCONTROL project

    QGROUNDCONTROL is free software: you can redistribute it and/or modify
pixhawk's avatar
pixhawk committed
10 11 12
    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.
pixhawk's avatar
pixhawk committed
13 14

    QGROUNDCONTROL is distributed in the hope that it will be useful,
pixhawk's avatar
pixhawk committed
15 16 17
    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.
pixhawk's avatar
pixhawk committed
18

pixhawk's avatar
pixhawk committed
19
    You should have received a copy of the GNU General Public License
pixhawk's avatar
pixhawk committed
20 21
    along with QGROUNDCONTROL. If not, see <http://www.gnu.org/licenses/>.

pixhawk's avatar
pixhawk committed
22
======================================================================*/
23

pixhawk's avatar
pixhawk committed
24 25 26 27 28 29 30 31 32 33 34 35 36
/**
 * @file
 *   @brief Brief Description
 *
 *   @author Lorenz Meier <mavteam@student.ethz.ch>
 *
 */

#ifndef SERIALLINKINTERFACE_H_
#define SERIALLINKINTERFACE_H_

#include <QObject>
#include <QString>
37
#include <QVector>
pixhawk's avatar
pixhawk committed
38 39
#include <LinkInterface.h>

40 41 42
class SerialLinkInterface : public LinkInterface
{
    Q_OBJECT
pixhawk's avatar
pixhawk committed
43 44

public:
45
    virtual QVector<QString>* getCurrentPorts() = 0;
46 47 48 49 50 51 52 53 54 55
    virtual QString getPortName() const = 0;
    virtual int getBaudRate() const = 0;
    virtual int getDataBits() const = 0;
    virtual int getStopBits() const = 0;

    virtual int getBaudRateType() const = 0;
    virtual int getFlowType() const = 0;
    virtual int getParityType() const = 0;
    virtual int getDataBitsType() const = 0;
    virtual int getStopBitsType() const = 0;
pixhawk's avatar
pixhawk committed
56 57

public slots:
58 59 60 61 62 63 64
    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;
James Goppert's avatar
James Goppert committed
65 66
    virtual void loadSettings() = 0;
    virtual void writeSettings() = 0;
pixhawk's avatar
pixhawk committed
67 68 69 70 71 72 73 74

};


/* Declare C++ interface as Qt interface */
//Q_DECLARE_INTERFACE(SerialLinkInterface, "org.openground.comm.links.SerialLinkInterface/1.0")

#endif // SERIALLINKINTERFACE_H_