From 5e6d87b2db5d0c9f04445fc8e0f36cfbac4624b2 Mon Sep 17 00:00:00 2001 From: stac Date: Sat, 22 Jan 2011 17:38:43 +0000 Subject: [PATCH] UAVObjects-xml: Move UAVObject definitions outside of gcs dir The UAVObject definition (.xml) files are used by both the GCS build as well as the flight software builds. git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2526 ebee16cc-31ac-478f-84a7-5cbb03baadba --- Makefile | 34 +++++++-------- .../flight/uavobjectgeneratorflight.cpp | 7 ++-- .../flight/uavobjectgeneratorflight.h | 2 +- .../generators/gcs/uavobjectgeneratorgcs.cpp | 7 ++-- .../generators/gcs/uavobjectgeneratorgcs.h | 2 +- .../matlab/uavobjectgeneratormatlab.cpp | 7 ++-- .../matlab/uavobjectgeneratormatlab.h | 2 +- .../python/uavobjectgeneratorpython.cpp | 7 ++-- .../python/uavobjectgeneratorpython.h | 2 +- ground/uavobjgenerator/main.cpp | 41 +++++++++++-------- .../uavobjectdefinition/actuatorcommand.xml | 0 .../uavobjectdefinition/actuatordesired.xml | 0 .../uavobjectdefinition/actuatorsettings.xml | 0 .../uavobjectdefinition/ahrscalibration.xml | 0 .../uavobjectdefinition/ahrssettings.xml | 0 .../uavobjectdefinition/ahrsstatus.xml | 0 .../uavobjectdefinition/attitudeactual.xml | 0 .../uavobjectdefinition/attitudedesired.xml | 0 .../uavobjectdefinition/attituderaw.xml | 0 .../uavobjectdefinition/baroaltitude.xml | 0 .../uavobjectdefinition/batterysettings.xml | 0 .../uavobjectdefinition/firmwareiap.xml | 0 .../flightbatterystate.xml | 0 .../uavobjectdefinition/flightplancontrol.xml | 0 .../flightplansettings.xml | 0 .../uavobjectdefinition/flightplanstatus.xml | 0 .../flighttelemetrystats.xml | 0 .../uavobjectdefinition/gcstelemetrystats.xml | 0 .../uavobjectdefinition/gpsposition.xml | 0 .../uavobjectdefinition/gpssatellites.xml | 0 .../uavobjectdefinition/gpstime.xml | 0 .../uavobjectdefinition/guidancesettings.xml | 0 .../uavobjectdefinition/homelocation.xml | 0 .../uavobjectdefinition/i2cstats.xml | 0 .../manualcontrolcommand.xml | 0 .../manualcontrolsettings.xml | 0 .../uavobjectdefinition/mixersettings.xml | 0 .../uavobjectdefinition/mixerstatus.xml | 0 .../uavobjectdefinition/nedaccel.xml | 0 .../uavobjectdefinition/objectpersistence.xml | 0 .../uavobjectdefinition/positionactual.xml | 0 .../uavobjectdefinition/positiondesired.xml | 0 .../uavobjectdefinition/ratedesired.xml | 0 .../stabilizationsettings.xml | 0 .../uavobjectdefinition/systemalarms.xml | 0 .../uavobjectdefinition/systemsettings.xml | 0 .../uavobjectdefinition/systemstats.xml | 0 .../uavobjectdefinition/taskinfo.xml | 0 .../uavobjectdefinition/telemetrysettings.xml | 0 .../uavobjectdefinition/velocityactual.xml | 0 .../uavobjectdefinition/velocitydesired.xml | 0 .../uavobjectdefinition/watchdogstatus.xml | 0 52 files changed, 58 insertions(+), 53 deletions(-) rename {ground/src/shared => shared}/uavobjectdefinition/actuatorcommand.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/actuatordesired.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/actuatorsettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/ahrscalibration.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/ahrssettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/ahrsstatus.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/attitudeactual.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/attitudedesired.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/attituderaw.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/baroaltitude.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/batterysettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/firmwareiap.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/flightbatterystate.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/flightplancontrol.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/flightplansettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/flightplanstatus.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/flighttelemetrystats.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/gcstelemetrystats.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/gpsposition.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/gpssatellites.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/gpstime.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/guidancesettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/homelocation.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/i2cstats.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/manualcontrolcommand.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/manualcontrolsettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/mixersettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/mixerstatus.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/nedaccel.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/objectpersistence.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/positionactual.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/positiondesired.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/ratedesired.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/stabilizationsettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/systemalarms.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/systemsettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/systemstats.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/taskinfo.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/telemetrysettings.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/velocityactual.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/velocitydesired.xml (100%) rename {ground/src/shared => shared}/uavobjectdefinition/watchdogstatus.xml (100%) diff --git a/Makefile b/Makefile index 1c7e7319a..2d49fda4e 100644 --- a/Makefile +++ b/Makefile @@ -18,6 +18,7 @@ ifeq ($(UNAME), Darwin) UAVOBJGENERATOR="$(BUILD_DIR)/uavobjgenerator/uavobjgenerator" endif + # Set up misc host tools RM=rm @@ -55,8 +56,10 @@ areyousureyoushouldberunningthis: @echo " gcs - Build the Ground Control System application" @echo " uavobjects - Generate source files from the UAVObject definition XML files" @echo " uavobjects_test - parse xml-files - check for valid, duplicate ObjId's, ... " - @echo " uavobjects_gcs - Generate groundstation source files from the UAVObject definition XML files" @echo " uavobjects_flight - Generate flight source files from the UAVObject definition XML files" + @echo " uavobjects_gcs - Generate groundstation source files from the UAVObject definition XML files" + @echo " uavobjects_python - Generate python source files from the UAVObject definition XML files" + @echo " uavobjects_matlab - Generate matlab source files from the UAVObject definition XML files" @echo @echo " Note: All tools will be installed into $(TOOLS_DIR)" @echo " All build output will be placed in $(BUILD_DIR)" @@ -209,31 +212,22 @@ uavobjgenerator: $(MAKE) -w ; \ ) -.PHONY: uavobjects-synthetics -uavobject-synthetics: - mkdir -p $(BUILD_DIR)/$@ - .PHONY:uavobjects uavobjects: uavobjects_gcs uavobjects_flight uavobjects_python uavobjects_matlab -uavobjects_gcs: uavobject-synthetics uavobjgenerator - mkdir -p $(BUILD_DIR)/uavobject-synthetics/gcs - $(UAVOBJGENERATOR) -gcs "$(ROOT_DIR)/" +UAVOBJ_XML_DIR := $(ROOT_DIR)/shared/uavobjectdefinition +UAVOBJ_OUT_DIR := $(BUILD_DIR)/uavobject-synthetics -uavobjects_flight: uavobject-synthetics uavobjgenerator - mkdir -p $(BUILD_DIR)/uavobject-synthetics/flight - $(UAVOBJGENERATOR) -flight "$(ROOT_DIR)/" +$(UAVOBJ_OUT_DIR): + mkdir -p $@ -uavobjects_python: uavobject-synthetics uavobjgenerator - mkdir -p $(BUILD_DIR)/uavobject-synthetics/python - $(UAVOBJGENERATOR) -python "$(ROOT_DIR)/" +uavobjects_%: $(UAVOBJ_OUT_DIR) uavobjgenerator + ( cd $(UAVOBJ_OUT_DIR) ; \ + $(UAVOBJGENERATOR) -$* $(UAVOBJ_XML_DIR) $(ROOT_DIR) ; \ + ) -uavobjects_matlab: uavobject-synthetics uavobjgenerator - mkdir -p $(BUILD_DIR)/uavobject-synthetics/matlab - $(UAVOBJGENERATOR) -matlab "$(ROOT_DIR)/" - -uavobjects_test: uavobject-synthetics uavobjgenerator - $(UAVOBJGENERATOR) -v -none "$(ROOT_DIR)/" +uavobjects_test: $(UAVOBJ_OUT_DIR) uavobjgenerator + $(UAVOBJGENERATOR) -v -none $(UAVOBJ_XML_DIR) $(ROOT_DIR) ############################## # diff --git a/ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.cpp b/ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.cpp index 3c37fe9c7..7f153956c 100644 --- a/ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.cpp +++ b/ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.cpp @@ -28,14 +28,15 @@ using namespace std; -bool UAVObjectGeneratorFlight::generate(UAVObjectParser* parser,QString basepath,QString outputpath) { +bool UAVObjectGeneratorFlight::generate(UAVObjectParser* parser,QString templatepath,QString outputpath) { fieldTypeStrC << "int8_t" << "int16_t" << "int32_t" <<"uint8_t" <<"uint16_t" << "uint32_t" << "float" << "uint8_t"; QString flightObjInit,objInc; - flightCodePath = QDir( basepath + QString("flight/UAVObjects")); - flightOutputPath = QDir( outputpath + QString("flight")); + flightCodePath = QDir( templatepath + QString("flight/UAVObjects")); + flightOutputPath = QDir( outputpath + QString("flight") ); + flightOutputPath.mkpath(flightOutputPath.absolutePath()); flightCodeTemplate = readFile( flightCodePath.absoluteFilePath("uavobjecttemplate.c") ); flightIncludeTemplate = readFile( flightCodePath.absoluteFilePath("inc/uavobjecttemplate.h") ); diff --git a/ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.h b/ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.h index 9988ee208..31c377509 100644 --- a/ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.h +++ b/ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.h @@ -32,7 +32,7 @@ class UAVObjectGeneratorFlight { public: - bool generate(UAVObjectParser* gen,QString basepath,QString outputpath); + bool generate(UAVObjectParser* gen,QString templatepath,QString outputpath); QStringList fieldTypeStrC; QString flightCodeTemplate, flightIncludeTemplate, flightInitTemplate; QDir flightCodePath; diff --git a/ground/uavobjgenerator/generators/gcs/uavobjectgeneratorgcs.cpp b/ground/uavobjgenerator/generators/gcs/uavobjectgeneratorgcs.cpp index c3926afb9..4923ac541 100644 --- a/ground/uavobjgenerator/generators/gcs/uavobjectgeneratorgcs.cpp +++ b/ground/uavobjgenerator/generators/gcs/uavobjectgeneratorgcs.cpp @@ -27,7 +27,7 @@ #include "uavobjectgeneratorgcs.h" using namespace std; -bool UAVObjectGeneratorGCS::generate(UAVObjectParser* parser,QString basepath,QString outputpath) { +bool UAVObjectGeneratorGCS::generate(UAVObjectParser* parser,QString templatepath,QString outputpath) { fieldTypeStrCPP << "qint8" << "qint16" << "qint32" << "quint8" << "quint16" << "quint32" << "float" << "quint8"; @@ -35,8 +35,9 @@ bool UAVObjectGeneratorGCS::generate(UAVObjectParser* parser,QString basepath,QS fieldTypeStrCPPClass << "INT8" << "INT16" << "INT32" << "UINT8" << "UINT16" << "UINT32" << "FLOAT32" << "ENUM"; - gcsCodePath = QDir( basepath + QString(GCS_CODE_DIR)); - gcsOutputPath = QDir( outputpath + QString("gcs")); + gcsCodePath = QDir( templatepath + QString(GCS_CODE_DIR)); + gcsOutputPath = QDir( outputpath + QString("gcs") ); + gcsOutputPath.mkpath(gcsOutputPath.absolutePath()); gcsCodeTemplate = readFile( gcsCodePath.absoluteFilePath("uavobjecttemplate.cpp") ); gcsIncludeTemplate = readFile( gcsCodePath.absoluteFilePath("uavobjecttemplate.h") ); diff --git a/ground/uavobjgenerator/generators/gcs/uavobjectgeneratorgcs.h b/ground/uavobjgenerator/generators/gcs/uavobjectgeneratorgcs.h index 05ef82d6b..721e18f92 100644 --- a/ground/uavobjgenerator/generators/gcs/uavobjectgeneratorgcs.h +++ b/ground/uavobjgenerator/generators/gcs/uavobjectgeneratorgcs.h @@ -34,7 +34,7 @@ class UAVObjectGeneratorGCS { public: - bool generate(UAVObjectParser* gen,QString basepath,QString outputpath); + bool generate(UAVObjectParser* gen,QString templatepath,QString outputpath); private: bool process_object(ObjectInfo* info); diff --git a/ground/uavobjgenerator/generators/matlab/uavobjectgeneratormatlab.cpp b/ground/uavobjgenerator/generators/matlab/uavobjectgeneratormatlab.cpp index fe53cd38d..962556396 100644 --- a/ground/uavobjgenerator/generators/matlab/uavobjectgeneratormatlab.cpp +++ b/ground/uavobjgenerator/generators/matlab/uavobjectgeneratormatlab.cpp @@ -28,13 +28,14 @@ using namespace std; -bool UAVObjectGeneratorMatlab::generate(UAVObjectParser* parser,QString basepath,QString outputpath) { +bool UAVObjectGeneratorMatlab::generate(UAVObjectParser* parser,QString templatepath,QString outputpath) { fieldTypeStrMatlab << "int8" << "int16" << "int32" << "uint8" << "uint16" << "uint32" << "float32" << "uint8"; - QDir matlabTemplatePath = QDir( basepath + QString("ground/src/plugins/uavobjects")); - QDir matlabOutputPath = QDir( outputpath + QString("matlab")); + QDir matlabTemplatePath = QDir( templatepath + QString("ground/src/plugins/uavobjects")); + QDir matlabOutputPath = QDir( outputpath + QString("matlab") ); + matlabOutputPath.mkpath(matlabOutputPath.absolutePath()); QString matlabCodeTemplate = readFile( matlabTemplatePath.absoluteFilePath( "uavobjecttemplate.m") ); diff --git a/ground/uavobjgenerator/generators/matlab/uavobjectgeneratormatlab.h b/ground/uavobjgenerator/generators/matlab/uavobjectgeneratormatlab.h index 939d33fb5..a5652b9e5 100644 --- a/ground/uavobjgenerator/generators/matlab/uavobjectgeneratormatlab.h +++ b/ground/uavobjgenerator/generators/matlab/uavobjectgeneratormatlab.h @@ -32,7 +32,7 @@ class UAVObjectGeneratorMatlab { public: - bool generate(UAVObjectParser* gen,QString basepath,QString outputpath); + bool generate(UAVObjectParser* gen,QString templatepath,QString outputpath); private: bool process_object(ObjectInfo* info); diff --git a/ground/uavobjgenerator/generators/python/uavobjectgeneratorpython.cpp b/ground/uavobjgenerator/generators/python/uavobjectgeneratorpython.cpp index a1418563d..47258a4a1 100644 --- a/ground/uavobjgenerator/generators/python/uavobjectgeneratorpython.cpp +++ b/ground/uavobjgenerator/generators/python/uavobjectgeneratorpython.cpp @@ -27,12 +27,13 @@ #include "uavobjectgeneratorpython.h" using namespace std; -bool UAVObjectGeneratorPython::generate(UAVObjectParser* parser,QString basepath,QString outputpath) { +bool UAVObjectGeneratorPython::generate(UAVObjectParser* parser,QString templatepath,QString outputpath) { fieldTypeStrPython << "b" << "h" << "i" << "B" << "H" << "I" << "f" << "b"; - pythonCodePath = QDir( basepath + QString("ground/src/plugins/uavobjects")); - pythonOutputPath = QDir( outputpath + QString("python")); + pythonCodePath = QDir( templatepath + QString("ground/src/plugins/uavobjects")); + pythonOutputPath = QDir( outputpath + QString("python") ); + pythonOutputPath.mkpath(pythonOutputPath.absolutePath()); pythonCodeTemplate = readFile( pythonCodePath.absoluteFilePath("uavobjecttemplate.py") ); diff --git a/ground/uavobjgenerator/generators/python/uavobjectgeneratorpython.h b/ground/uavobjgenerator/generators/python/uavobjectgeneratorpython.h index a38806f22..4fe5adcb1 100644 --- a/ground/uavobjgenerator/generators/python/uavobjectgeneratorpython.h +++ b/ground/uavobjgenerator/generators/python/uavobjectgeneratorpython.h @@ -32,7 +32,7 @@ class UAVObjectGeneratorPython { public: - bool generate(UAVObjectParser* gen,QString basepath,QString outputpath); + bool generate(UAVObjectParser* gen,QString templatepath,QString outputpath); private: bool process_object(ObjectInfo* info); diff --git a/ground/uavobjgenerator/main.cpp b/ground/uavobjgenerator/main.cpp index 9d11134e7..2d9afca53 100644 --- a/ground/uavobjgenerator/main.cpp +++ b/ground/uavobjgenerator/main.cpp @@ -45,7 +45,7 @@ using namespace std; * print usage info */ void usage() { - cout << "Usage: uavobjectgenerator [-gcs] [-flight] [-java] [-python] [-matlab] [-none] [-v] [base_path]" << endl; + cout << "Usage: uavobjectgenerator [-gcs] [-flight] [-java] [-python] [-matlab] [-none] [-v] xml_path template_base" << endl; cout << "Languages: "<< endl; cout << "\t-gcs build groundstation code" << endl; cout << "\t-flight build flight code" << endl; @@ -57,7 +57,8 @@ void usage() { cout << "\t-none build no language - just parse xml's" << endl; cout << "\t-h this help" << endl; cout << "\t-v verbose" << endl; - cout << "\tbase_path base path to gcs and flight directories (as in svn)." << endl; + cout << "\tinput_path path to UAVObject definition (.xml) files." << endl; + cout << "\ttemplate_path path to the root of the OpenPilot source tree." << endl; } /** @@ -78,7 +79,8 @@ int main(int argc, char *argv[]) cout << "- OpenPilot UAVObject Generator -" << endl; - QString basepath; + QString inputpath; + QString templatepath; QString outputpath; QStringList arguments_stringlist; @@ -101,19 +103,24 @@ int main(int argc, char *argv[]) bool do_all=((do_gcs||do_flight||do_java||do_python||do_matlab)==false); - if (arguments_stringlist.length() == 0) // if we have no param left - make up a basepath - basepath =QString("../../../../../"); - else if (arguments_stringlist.length() == 1) // if we have one param left it is the basepath - basepath = arguments_stringlist.at(0); - else // too many arguments + if (arguments_stringlist.length() == 2) { + inputpath = arguments_stringlist.at(0); + templatepath = arguments_stringlist.at(1); + } else { + // wrong number of arguments return usage_err(); + } - if (!basepath.endsWith("/")) - basepath.append("/"); // append a slash if it is not there + if (!inputpath.endsWith("/")) + inputpath.append("/"); // append a slash if it is not there - outputpath = basepath + QString("build/uavobject-synthetics/"); + if (!templatepath.endsWith("/")) + templatepath.append("/"); // append a slash if it is not there - QDir xmlPath = QDir( basepath + QString("ground/src/shared/uavobjectdefinition")); + // put all output files in the current directory + outputpath = QString("./"); + + QDir xmlPath = QDir(inputpath); UAVObjectParser* parser = new UAVObjectParser(); QStringList filters=QStringList("*.xml"); @@ -169,35 +176,35 @@ int main(int argc, char *argv[]) if (do_flight|do_all) { cout << "generating flight code" << endl ; UAVObjectGeneratorFlight flightgen; - flightgen.generate(parser,basepath,outputpath); + flightgen.generate(parser,templatepath,outputpath); } // generate gcs code if wanted if (do_gcs|do_all) { cout << "generating gcs code" << endl ; UAVObjectGeneratorGCS gcsgen; - gcsgen.generate(parser,basepath,outputpath); + gcsgen.generate(parser,templatepath,outputpath); } // generate java code if wanted if (do_java|do_all) { cout << "generating java code" << endl ; UAVObjectGeneratorJava javagen; - javagen.generate(parser,basepath); + javagen.generate(parser,templatepath); } // generate python code if wanted if (do_python|do_all) { cout << "generating python code" << endl ; UAVObjectGeneratorPython pygen; - pygen.generate(parser,basepath,outputpath); + pygen.generate(parser,templatepath,outputpath); } // generate matlab code if wanted if (do_matlab|do_all) { cout << "generating matlab code" << endl ; UAVObjectGeneratorMatlab matlabgen; - matlabgen.generate(parser,basepath,outputpath); + matlabgen.generate(parser,templatepath,outputpath); } return RETURN_OK; diff --git a/ground/src/shared/uavobjectdefinition/actuatorcommand.xml b/shared/uavobjectdefinition/actuatorcommand.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/actuatorcommand.xml rename to shared/uavobjectdefinition/actuatorcommand.xml diff --git a/ground/src/shared/uavobjectdefinition/actuatordesired.xml b/shared/uavobjectdefinition/actuatordesired.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/actuatordesired.xml rename to shared/uavobjectdefinition/actuatordesired.xml diff --git a/ground/src/shared/uavobjectdefinition/actuatorsettings.xml b/shared/uavobjectdefinition/actuatorsettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/actuatorsettings.xml rename to shared/uavobjectdefinition/actuatorsettings.xml diff --git a/ground/src/shared/uavobjectdefinition/ahrscalibration.xml b/shared/uavobjectdefinition/ahrscalibration.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/ahrscalibration.xml rename to shared/uavobjectdefinition/ahrscalibration.xml diff --git a/ground/src/shared/uavobjectdefinition/ahrssettings.xml b/shared/uavobjectdefinition/ahrssettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/ahrssettings.xml rename to shared/uavobjectdefinition/ahrssettings.xml diff --git a/ground/src/shared/uavobjectdefinition/ahrsstatus.xml b/shared/uavobjectdefinition/ahrsstatus.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/ahrsstatus.xml rename to shared/uavobjectdefinition/ahrsstatus.xml diff --git a/ground/src/shared/uavobjectdefinition/attitudeactual.xml b/shared/uavobjectdefinition/attitudeactual.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/attitudeactual.xml rename to shared/uavobjectdefinition/attitudeactual.xml diff --git a/ground/src/shared/uavobjectdefinition/attitudedesired.xml b/shared/uavobjectdefinition/attitudedesired.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/attitudedesired.xml rename to shared/uavobjectdefinition/attitudedesired.xml diff --git a/ground/src/shared/uavobjectdefinition/attituderaw.xml b/shared/uavobjectdefinition/attituderaw.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/attituderaw.xml rename to shared/uavobjectdefinition/attituderaw.xml diff --git a/ground/src/shared/uavobjectdefinition/baroaltitude.xml b/shared/uavobjectdefinition/baroaltitude.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/baroaltitude.xml rename to shared/uavobjectdefinition/baroaltitude.xml diff --git a/ground/src/shared/uavobjectdefinition/batterysettings.xml b/shared/uavobjectdefinition/batterysettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/batterysettings.xml rename to shared/uavobjectdefinition/batterysettings.xml diff --git a/ground/src/shared/uavobjectdefinition/firmwareiap.xml b/shared/uavobjectdefinition/firmwareiap.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/firmwareiap.xml rename to shared/uavobjectdefinition/firmwareiap.xml diff --git a/ground/src/shared/uavobjectdefinition/flightbatterystate.xml b/shared/uavobjectdefinition/flightbatterystate.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/flightbatterystate.xml rename to shared/uavobjectdefinition/flightbatterystate.xml diff --git a/ground/src/shared/uavobjectdefinition/flightplancontrol.xml b/shared/uavobjectdefinition/flightplancontrol.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/flightplancontrol.xml rename to shared/uavobjectdefinition/flightplancontrol.xml diff --git a/ground/src/shared/uavobjectdefinition/flightplansettings.xml b/shared/uavobjectdefinition/flightplansettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/flightplansettings.xml rename to shared/uavobjectdefinition/flightplansettings.xml diff --git a/ground/src/shared/uavobjectdefinition/flightplanstatus.xml b/shared/uavobjectdefinition/flightplanstatus.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/flightplanstatus.xml rename to shared/uavobjectdefinition/flightplanstatus.xml diff --git a/ground/src/shared/uavobjectdefinition/flighttelemetrystats.xml b/shared/uavobjectdefinition/flighttelemetrystats.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/flighttelemetrystats.xml rename to shared/uavobjectdefinition/flighttelemetrystats.xml diff --git a/ground/src/shared/uavobjectdefinition/gcstelemetrystats.xml b/shared/uavobjectdefinition/gcstelemetrystats.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/gcstelemetrystats.xml rename to shared/uavobjectdefinition/gcstelemetrystats.xml diff --git a/ground/src/shared/uavobjectdefinition/gpsposition.xml b/shared/uavobjectdefinition/gpsposition.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/gpsposition.xml rename to shared/uavobjectdefinition/gpsposition.xml diff --git a/ground/src/shared/uavobjectdefinition/gpssatellites.xml b/shared/uavobjectdefinition/gpssatellites.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/gpssatellites.xml rename to shared/uavobjectdefinition/gpssatellites.xml diff --git a/ground/src/shared/uavobjectdefinition/gpstime.xml b/shared/uavobjectdefinition/gpstime.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/gpstime.xml rename to shared/uavobjectdefinition/gpstime.xml diff --git a/ground/src/shared/uavobjectdefinition/guidancesettings.xml b/shared/uavobjectdefinition/guidancesettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/guidancesettings.xml rename to shared/uavobjectdefinition/guidancesettings.xml diff --git a/ground/src/shared/uavobjectdefinition/homelocation.xml b/shared/uavobjectdefinition/homelocation.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/homelocation.xml rename to shared/uavobjectdefinition/homelocation.xml diff --git a/ground/src/shared/uavobjectdefinition/i2cstats.xml b/shared/uavobjectdefinition/i2cstats.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/i2cstats.xml rename to shared/uavobjectdefinition/i2cstats.xml diff --git a/ground/src/shared/uavobjectdefinition/manualcontrolcommand.xml b/shared/uavobjectdefinition/manualcontrolcommand.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/manualcontrolcommand.xml rename to shared/uavobjectdefinition/manualcontrolcommand.xml diff --git a/ground/src/shared/uavobjectdefinition/manualcontrolsettings.xml b/shared/uavobjectdefinition/manualcontrolsettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/manualcontrolsettings.xml rename to shared/uavobjectdefinition/manualcontrolsettings.xml diff --git a/ground/src/shared/uavobjectdefinition/mixersettings.xml b/shared/uavobjectdefinition/mixersettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/mixersettings.xml rename to shared/uavobjectdefinition/mixersettings.xml diff --git a/ground/src/shared/uavobjectdefinition/mixerstatus.xml b/shared/uavobjectdefinition/mixerstatus.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/mixerstatus.xml rename to shared/uavobjectdefinition/mixerstatus.xml diff --git a/ground/src/shared/uavobjectdefinition/nedaccel.xml b/shared/uavobjectdefinition/nedaccel.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/nedaccel.xml rename to shared/uavobjectdefinition/nedaccel.xml diff --git a/ground/src/shared/uavobjectdefinition/objectpersistence.xml b/shared/uavobjectdefinition/objectpersistence.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/objectpersistence.xml rename to shared/uavobjectdefinition/objectpersistence.xml diff --git a/ground/src/shared/uavobjectdefinition/positionactual.xml b/shared/uavobjectdefinition/positionactual.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/positionactual.xml rename to shared/uavobjectdefinition/positionactual.xml diff --git a/ground/src/shared/uavobjectdefinition/positiondesired.xml b/shared/uavobjectdefinition/positiondesired.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/positiondesired.xml rename to shared/uavobjectdefinition/positiondesired.xml diff --git a/ground/src/shared/uavobjectdefinition/ratedesired.xml b/shared/uavobjectdefinition/ratedesired.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/ratedesired.xml rename to shared/uavobjectdefinition/ratedesired.xml diff --git a/ground/src/shared/uavobjectdefinition/stabilizationsettings.xml b/shared/uavobjectdefinition/stabilizationsettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/stabilizationsettings.xml rename to shared/uavobjectdefinition/stabilizationsettings.xml diff --git a/ground/src/shared/uavobjectdefinition/systemalarms.xml b/shared/uavobjectdefinition/systemalarms.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/systemalarms.xml rename to shared/uavobjectdefinition/systemalarms.xml diff --git a/ground/src/shared/uavobjectdefinition/systemsettings.xml b/shared/uavobjectdefinition/systemsettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/systemsettings.xml rename to shared/uavobjectdefinition/systemsettings.xml diff --git a/ground/src/shared/uavobjectdefinition/systemstats.xml b/shared/uavobjectdefinition/systemstats.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/systemstats.xml rename to shared/uavobjectdefinition/systemstats.xml diff --git a/ground/src/shared/uavobjectdefinition/taskinfo.xml b/shared/uavobjectdefinition/taskinfo.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/taskinfo.xml rename to shared/uavobjectdefinition/taskinfo.xml diff --git a/ground/src/shared/uavobjectdefinition/telemetrysettings.xml b/shared/uavobjectdefinition/telemetrysettings.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/telemetrysettings.xml rename to shared/uavobjectdefinition/telemetrysettings.xml diff --git a/ground/src/shared/uavobjectdefinition/velocityactual.xml b/shared/uavobjectdefinition/velocityactual.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/velocityactual.xml rename to shared/uavobjectdefinition/velocityactual.xml diff --git a/ground/src/shared/uavobjectdefinition/velocitydesired.xml b/shared/uavobjectdefinition/velocitydesired.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/velocitydesired.xml rename to shared/uavobjectdefinition/velocitydesired.xml diff --git a/ground/src/shared/uavobjectdefinition/watchdogstatus.xml b/shared/uavobjectdefinition/watchdogstatus.xml similarity index 100% rename from ground/src/shared/uavobjectdefinition/watchdogstatus.xml rename to shared/uavobjectdefinition/watchdogstatus.xml