5 changed files with 254 additions and 5 deletions
@ -0,0 +1,28 @@
@@ -0,0 +1,28 @@
|
||||
QT += net |
||||
|
||||
TEMPLATE = app |
||||
TARGET = qgroundcontrol-server |
||||
|
||||
BASEDIR = ../.. |
||||
BUILDDIR = $$BASEDIR/build/qgroundcontrol-server |
||||
LANGUAGE = C++ |
||||
|
||||
CONFIG += release |
||||
CONFIG -= debug |
||||
|
||||
OBJECTS_DIR = $$BUILDDIR/qgroundcontrol-server/obj |
||||
MOC_DIR = $$BUILDDIR/qgroundcontrol-server/moc |
||||
|
||||
macx:DESTDIR = $$BASEDIR/bin/mac |
||||
|
||||
INCLUDEPATH += $$BASEDIR/. \ |
||||
$$BASEDIR/src \ |
||||
$$BASEDIR/src/comm \ |
||||
$$BASEDIR/standalone/qgroundcontrol-server/src |
||||
|
||||
HEADERS += src/QGroundControlServer.h \ |
||||
$$BASEDIR/src/comm/MAVLinkProtocol.h |
||||
SOURCES += src/main.cc \ |
||||
src/QGroundControlServer.cc \ |
||||
$$BASEDIR/src/comm/MAVLinkProtocol.cc |
||||
RESOURCES = $$BASEDIR/mavground.qrc |
@ -0,0 +1,93 @@
@@ -0,0 +1,93 @@
|
||||
/*=====================================================================
|
||||
|
||||
PIXHAWK Micro Air Vehicle Flying Robotics Toolkit |
||||
|
||||
(c) 2009, 2010 PIXHAWK PROJECT <http://pixhawk.ethz.ch>
|
||||
|
||||
This file is part of the PIXHAWK project |
||||
|
||||
PIXHAWK 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. |
||||
|
||||
PIXHAWK 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 PIXHAWK. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
======================================================================*/ |
||||
|
||||
/**
|
||||
* @file |
||||
* @brief Implementation of class MAVLinkGen |
||||
* |
||||
* @author Lorenz Meier <mavteam@student.ethz.ch> |
||||
* |
||||
*/ |
||||
|
||||
|
||||
#include <QFile> |
||||
#include <QFlags> |
||||
#include <QThread> |
||||
#include <QSplashScreen> |
||||
#include <QPixmap> |
||||
#include <QDesktopWidget> |
||||
#include <QPainter> |
||||
#include <QStyleFactory> |
||||
#include <QAction> |
||||
#include <QSettings> |
||||
#include <QFontDatabase> |
||||
#include <QMainWindow> |
||||
|
||||
#include "MAVLinkGen.h" |
||||
#include "XMLCommProtocolWidget.h" |
||||
|
||||
|
||||
/**
|
||||
* @brief Constructor for the main application. |
||||
* |
||||
* This constructor initializes and starts the whole application. It takes standard |
||||
* command-line parameters |
||||
* |
||||
* @param argc The number of command-line parameters |
||||
* @param argv The string array of parameters |
||||
**/ |
||||
|
||||
MAVLinkGen::MAVLinkGen(int &argc, char* argv[]) : QApplication(argc, argv) |
||||
{ |
||||
this->setApplicationName("MAVLink Generator"); |
||||
this->setApplicationVersion("v. 0.1.0 (Beta)"); |
||||
this->setOrganizationName(QLatin1String("OpenMAV Association")); |
||||
this->setOrganizationDomain("http://qgroundcontrol.org"); |
||||
|
||||
QSettings::setDefaultFormat(QSettings::IniFormat); |
||||
// Exit main application when last window is closed
|
||||
connect(this, SIGNAL(lastWindowClosed()), this, SLOT(quit())); |
||||
|
||||
// Set application font
|
||||
QFontDatabase fontDatabase = QFontDatabase(); |
||||
const QString fontFileName = ":/general/vera.ttf"; ///< Font file is part of the QRC file and compiled into the app
|
||||
const QString fontFamilyName = "Bitstream Vera Sans"; |
||||
if(!QFile::exists(fontFileName)) printf("ERROR! font file: %s DOES NOT EXIST!\n", fontFileName.toStdString().c_str()); |
||||
fontDatabase.addApplicationFont(fontFileName); |
||||
setFont(fontDatabase.font(fontFamilyName, "Roman", 12)); |
||||
|
||||
// Create main window
|
||||
QMainWindow* window = new QMainWindow(); |
||||
window->setCentralWidget(new XMLCommProtocolWidget(window)); |
||||
window->setWindowTitle(applicationName() + " " + applicationVersion()); |
||||
window->show(); |
||||
} |
||||
|
||||
/**
|
||||
* @brief Destructor for the groundstation. It destroys all loaded instances. |
||||
* |
||||
**/ |
||||
MAVLinkGen::~MAVLinkGen() |
||||
{ |
||||
} |
||||
|
@ -0,0 +1,58 @@
@@ -0,0 +1,58 @@
|
||||
/*=====================================================================
|
||||
|
||||
PIXHAWK Micro Air Vehicle Flying Robotics Toolkit |
||||
|
||||
(c) 2009, 2010 PIXHAWK PROJECT <http://pixhawk.ethz.ch>
|
||||
|
||||
This file is part of the PIXHAWK project |
||||
|
||||
PIXHAWK 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. |
||||
|
||||
PIXHAWK 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 PIXHAWK. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
======================================================================*/ |
||||
|
||||
/**
|
||||
* @file |
||||
* @brief Definition of class MAVLinkGen |
||||
* |
||||
* @author Lorenz Meier <mavteam@student.ethz.ch> |
||||
* |
||||
*/ |
||||
|
||||
|
||||
#ifndef MAVLINKGEN_H |
||||
#define MAVLINKGEN_H |
||||
|
||||
#include <QApplication> |
||||
|
||||
/**
|
||||
* @brief The main application and management class. |
||||
* |
||||
* This class is started by the main method and provides |
||||
* the central management unit of the groundstation application. |
||||
* |
||||
**/ |
||||
class MAVLinkGen : public QApplication |
||||
{ |
||||
Q_OBJECT |
||||
|
||||
public: |
||||
MAVLinkGen(int &argc, char* argv[]); |
||||
~MAVLinkGen(); |
||||
|
||||
protected: |
||||
|
||||
private: |
||||
}; |
||||
|
||||
#endif /* MAVLINKGEN_H */ |
@ -0,0 +1,46 @@
@@ -0,0 +1,46 @@
|
||||
/*=====================================================================
|
||||
|
||||
PIXHAWK Micro Air Vehicle Flying Robotics Toolkit |
||||
|
||||
(c) 2009, 2010 PIXHAWK PROJECT <http://pixhawk.ethz.ch>
|
||||
|
||||
This file is part of the PIXHAWK project |
||||
|
||||
PIXHAWK 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. |
||||
|
||||
PIXHAWK 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 PIXHAWK. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
======================================================================*/ |
||||
|
||||
/**
|
||||
* @file |
||||
* @brief Main executable |
||||
* @author Lorenz Meier <mavteam@student.ethz.ch> |
||||
* |
||||
*/ |
||||
|
||||
#include <QtGui/QApplication> |
||||
#include "MAVLinkGen.h" |
||||
|
||||
/**
|
||||
* @brief Starts the application |
||||
* |
||||
* @param argc Number of commandline arguments |
||||
* @param argv Commandline arguments |
||||
* @return exit code, 0 for normal exit and !=0 for error cases |
||||
*/ |
||||
int main(int argc, char *argv[]) |
||||
{ |
||||
|
||||
MAVLinkGen gen(argc, argv); |
||||
return gen.exec(); |
||||
} |
Loading…
Reference in new issue