1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-11-29 07:24:13 +01:00

Merge branch 'next' of ssh://git.openpilot.org/OpenPilot into pt/wiz_autoupdate

This commit is contained in:
PT_Dreamer 2012-10-10 18:22:53 +01:00
commit 8863601715
139 changed files with 7008 additions and 20270 deletions

8
.gitignore vendored
View File

@ -72,7 +72,13 @@ GTAGS
plane
quad
# Ignore auto generated java files
# Ignore intermediate files generated by command-line android builds
# Couldn't figure out how to force these files into the ./build directory
androidgcs/build.xml
androidgcs/local.properties
androidgcs/proguard-project.txt
# Ignore build output from Eclipse android builds
androidgcs/bin/
androidgcs/gen/
/.cproject

199
Makefile
View File

@ -7,6 +7,10 @@ TOOLS_DIR=$(ROOT_DIR)/tools
BUILD_DIR=$(ROOT_DIR)/build
DL_DIR=$(ROOT_DIR)/downloads
# Function for converting an absolute path to one relative
# to the top of the source tree.
toprel = $(subst $(realpath $(ROOT_DIR))/,,$(abspath $(1)))
# Clean out undesirable variables from the environment and command-line
# to remove the chance that they will cause problems with our build
define SANITIZE_VAR
@ -32,6 +36,7 @@ $(foreach var, $(SANITIZE_DEPRECATED_VARS), $(eval $(call SANITIZE_VAR,$(var),de
QT_SPEC=win32-g++
UAVOBJGENERATOR="$(BUILD_DIR)/ground/uavobjgenerator/debug/uavobjgenerator.exe"
UNAME := $(shell uname)
ARCH := $(shell uname -m)
ifeq ($(UNAME), Linux)
QT_SPEC=linux-g++
UAVOBJGENERATOR="$(BUILD_DIR)/ground/uavobjgenerator/uavobjgenerator"
@ -73,6 +78,7 @@ help:
@echo " openocd_install - Install the OpenOCD JTAG daemon"
@echo " stm32flash_install - Install the stm32flash tool for unbricking boards"
@echo " dfuutil_install - Install the dfu-util tool for unbricking F4-based boards"
@echo " android_sdk_install - Install the Android SDK tools"
@echo
@echo " [Big Hammer]"
@echo " all - Generate UAVObjects, build openpilot firmware and gcs"
@ -161,10 +167,16 @@ $(BUILD_DIR):
QT_SDK_DIR := $(TOOLS_DIR)/qtsdk-v1.2.1
.PHONY: qt_sdk_install
# Choose the appropriate installer based on host architecture
ifneq (,$(filter $(ARCH), x86_64 amd64))
# 64-bit
qt_sdk_install: QT_SDK_FILE := QtSdk-offline-linux-x86_64-v1.2.1.run
qt_sdk_install: QT_SDK_URL := http://www.developer.nokia.com/dp?uri=http://sw.nokia.com/id/14b2039c-0e1f-4774-a4f2-9aa60b6d5313/Qt_SDK_Lin64_offline
else
# 32-bit
qt_sdk_install: QT_SDK_URL := http://www.developer.nokia.com/dp?uri=http://sw.nokia.com/id/8ea74da4-fec1-4277-8b26-c58cc82e204b/Qt_SDK_Lin32_offline
qt_sdk_install: QT_SDK_FILE := QtSdk-offline-linux-x86-v1.2.1.run
#qt_sdk_install: QT_SDK_URL := http://www.developer.nokia.com/dp?uri=http://sw.nokia.com/id/c365bbf5-c2b9-4dda-9c1f-34b2c8d07785/Qt_SDK_Lin32_offline_v1_1_2
#qt_sdk_install: QT_SDK_FILE := Qt_SDK_Lin32_offline_v1_1_2_en.run
endif
# order-only prereq on directory existance:
qt_sdk_install : | $(DL_DIR) $(TOOLS_DIR)
qt_sdk_install: qt_sdk_clean
@ -426,6 +438,32 @@ dfuutil_clean:
$(V0) @echo " CLEAN $(DFUUTIL_DIR)"
$(V1) [ ! -d "$(DFUUTIL_DIR)" ] || $(RM) -r "$(DFUUTIL_DIR)"
# see http://developer.android.com/sdk/ for latest versions
ANDROID_SDK_DIR := $(TOOLS_DIR)/android-sdk-linux
.PHONY: android_sdk_install
android_sdk_install: ANDROID_SDK_URL := http://dl.google.com/android/android-sdk_r20.0.3-linux.tgz
android_sdk_install: ANDROID_SDK_FILE := $(notdir $(ANDROID_SDK_URL))
# order-only prereq on directory existance:
android_sdk_install: | $(DL_DIR) $(TOOLS_DIR)
android_sdk_install: android_sdk_clean
# download the source only if it's newer than what we already have
$(V0) @echo " DOWNLOAD $(ANDROID_SDK_URL)"
$(V1) wget --no-check-certificate -N -P "$(DL_DIR)" "$(ANDROID_SDK_URL)"
# binary only release so just extract it
$(V0) @echo " EXTRACT $(ANDROID_SDK_FILE)"
$(V1) tar -C $(TOOLS_DIR) -xf "$(DL_DIR)/$(ANDROID_SDK_FILE)"
.PHONY: android_sdk_clean
android_sdk_clean:
$(V0) @echo " CLEAN $(ANDROID_SDK_DIR)"
$(V1) [ ! -d "$(ANDROID_SDK_DIR)" ] || $(RM) -r $(ANDROID_SDK_DIR)
.PHONY: android_sdk_update
android_sdk_update:
$(V0) @echo " UPDATE $(ANDROID_SDK_DIR)"
$(ANDROID_SDK_DIR)/tools/android update sdk --no-ui -t platform-tools,android-16,addon-google_apis-google-16
##############################
#
# Set up paths to tools
@ -453,6 +491,15 @@ else
OPENOCD ?= openocd
endif
ifeq ($(shell [ -d "$(ANDROID_SDK_DIR)" ] && echo "exists"), exists)
ANDROID := $(ANDROID_SDK_DIR)/tools/android
ANDROID_DX := $(ANDROID_SDK_DIR)/platform-tools/dx
else
# not installed, hope it's in the path...
ANDROID ?= android
ANDROID_DX ?= dx
endif
##############################
#
# GCS related components
@ -510,6 +557,154 @@ uavobjects_clean:
$(V0) @echo " CLEAN $@"
$(V1) [ ! -d "$(UAVOBJ_OUT_DIR)" ] || $(RM) -r "$(UAVOBJ_OUT_DIR)"
################################
#
# Android GCS related components
#
################################
# Build the output directory for the Android GCS build
ANDROIDGCS_OUT_DIR := $(BUILD_DIR)/androidgcs
$(ANDROIDGCS_OUT_DIR):
$(V1) mkdir -p $@
# Build the asset directory for the android assets
ANDROIDGCS_ASSETS_DIR := $(ANDROIDGCS_OUT_DIR)/assets
$(ANDROIDGCS_ASSETS_DIR)/uavos:
$(V1) mkdir -p $@
ifeq ($(V), 1)
ANT_QUIET :=
ANDROID_SILENT :=
else
ANT_QUIET := -q
ANDROID_SILENT := -s
endif
.PHONY: androidgcs
androidgcs: uavo-collections_java
$(V0) @echo " ANDROID $(call toprel, $(ANDROIDGCS_OUT_DIR))"
$(V1) mkdir -p $(ANDROIDGCS_OUT_DIR)
$(V1) $(ANDROID) $(ANDROID_SILENT) update project --target 'Google Inc.:Google APIs:16' --name androidgcs --path ./androidgcs
$(V1) ant -f ./androidgcs/build.xml \
$(ANT_QUIET) \
-Dout.dir="../$(call toprel, $(ANDROIDGCS_OUT_DIR)/bin)" \
-Dgen.absolute.dir="$(ANDROIDGCS_OUT_DIR)/gen" \
debug
.PHONY: androidgcs_clean
androidgcs_clean:
$(V0) @echo " CLEAN $@"
$(V1) [ ! -d "$(ANDROIDGCS_OUT_DIR)" ] || $(RM) -r "$(ANDROIDGCS_OUT_DIR)"
# We want to take snapshots of the UAVOs at each point that they change
# to allow the GCS to be compatible with as many versions as possible.
#
# Find the git hashes of each commit that changes uavobjects with:
# git log --format=%h -- shared/uavobjectdefinition/ | head -n 2
UAVO_GIT_VERSIONS := 684620d 43f85d9
# All versions includes a pseudo collection called "working" which represents
# the UAVOs in the source tree
UAVO_ALL_VERSIONS := $(UAVO_GIT_VERSIONS) srctree
# This is where the UAVO collections are stored
UAVO_COLLECTION_DIR := $(BUILD_DIR)/uavo-collections
# $(1) git hash of a UAVO snapshot
define UAVO_COLLECTION_GIT_TEMPLATE
# Make the output directory that will contain all of the synthetics for the
# uavo collection referenced by the git hash $(1)
$$(UAVO_COLLECTION_DIR)/$(1):
$$(V1) mkdir -p $$(UAVO_COLLECTION_DIR)/$(1)
# Extract the snapshot of shared/uavobjectdefinition from git hash $(1)
$$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml.tar: | $$(UAVO_COLLECTION_DIR)/$(1)
$$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml.tar:
$$(V0) @echo " UAVOTAR $(1)"
$$(V1) git archive $(1) -o $$@ -- shared/uavobjectdefinition/
# Extract the uavo xml files from our snapshot
$$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml: $$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml.tar
$$(V0) @echo " UAVOUNTAR $(1)"
$$(V1) rm -rf $$@
$$(V1) mkdir -p $$@
$$(V1) tar -C $$@ -xf $$< || rm -rf $$@
endef
# Map the current working directory into the set of UAVO collections
$(UAVO_COLLECTION_DIR)/srctree:
$(V1) mkdir -p $@
$(UAVO_COLLECTION_DIR)/srctree/uavo-xml: | $(UAVO_COLLECTION_DIR)/srctree
$(UAVO_COLLECTION_DIR)/srctree/uavo-xml: $(UAVOBJ_XML_DIR)
$(V1) ln -sf $(ROOT_DIR) $(UAVO_COLLECTION_DIR)/srctree/uavo-xml
# $(1) git hash (or symbolic name) of a UAVO snapshot
define UAVO_COLLECTION_BUILD_TEMPLATE
# This leaves us with a (broken) symlink that points to the full sha1sum of the collection
$$(UAVO_COLLECTION_DIR)/$(1)/uavohash: $$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml
# Compute the sha1 hash for this UAVO collection
$$(V1) python $$(ROOT_DIR)/make/scripts/version-info.py \
--path=$$(ROOT_DIR) \
--uavodir=$$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml/shared/uavobjectdefinition \
--format='$$$${UAVOSHA1TXT}' | xargs -n1 -I{} ln -sf {} $$(UAVO_COLLECTION_DIR)/$(1)/uavohash
# Create the target of the symlink (ie. a directory named by the actual UAVO hash)
$$(V0) @echo " UAVOHASH $(1) ->" $$$$(readlink $$(UAVO_COLLECTION_DIR)/$(1)/uavohash)
$$(V1) mkdir -p $$(UAVO_COLLECTION_DIR)/$(1)/$$$$(readlink $$(UAVO_COLLECTION_DIR)/$(1)/uavohash)
# Generate the java uavobjects for this UAVO collection
$$(UAVO_COLLECTION_DIR)/$(1)/uavohash/java-build/java: $$(UAVO_COLLECTION_DIR)/$(1)/uavohash
$$(V0) @echo " UAVOJAVA $(1) " $$$$(readlink $$(UAVO_COLLECTION_DIR)/$(1)/uavohash)
$$(V1) mkdir -p $$@
$$(V1) ( \
cd $$(UAVO_COLLECTION_DIR)/$(1)/uavohash/java-build && \
$$(UAVOBJGENERATOR) -java $$(UAVO_COLLECTION_DIR)/$(1)/uavo-xml/shared/uavobjectdefinition $$(ROOT_DIR) ; \
)
# Build a jar file for this UAVO collection
$$(UAVO_COLLECTION_DIR)/$(1)/uavohash/java-build/uavobjects.jar: | $$(ANDROIDGCS_ASSETS_DIR)/uavos
$$(UAVO_COLLECTION_DIR)/$(1)/uavohash/java-build/uavobjects.jar: $$(UAVO_COLLECTION_DIR)/$(1)/uavohash/java-build/java
$$(V0) @echo " UAVOJAR $(1) " $$$$(readlink $$(UAVO_COLLECTION_DIR)/$(1)/uavohash)
$$(V1) ( \
HASH=$$$$(readlink $$(UAVO_COLLECTION_DIR)/$(1)/uavohash) && \
cd $$(UAVO_COLLECTION_DIR)/$(1)/uavohash/java-build && \
javac java/*.java \
$$(ROOT_DIR)/androidgcs/src/org/openpilot/uavtalk/UAVDataObject.java \
$$(ROOT_DIR)/androidgcs/src/org/openpilot/uavtalk/UAVObject*.java \
$$(ROOT_DIR)/androidgcs/src/org/openpilot/uavtalk/UAVMetaObject.java \
-d . && \
find ./org/openpilot/uavtalk/uavobjects -type f -name '*.class' > classlist.txt && \
jar cf tmp_uavobjects.jar @classlist.txt && \
$$(ANDROID_DX) \
--dex \
--output $$(ANDROIDGCS_ASSETS_DIR)/uavos/$$$${HASH}.jar \
tmp_uavobjects.jar && \
ln -sf $$(ANDROIDGCS_ASSETS_DIR)/uavos/$$$${HASH}.jar uavobjects.jar \
)
endef
# One of these for each element of UAVO_GIT_VERSIONS so we can extract the UAVOs from git
$(foreach githash, $(UAVO_GIT_VERSIONS), $(eval $(call UAVO_COLLECTION_GIT_TEMPLATE,$(githash))))
# One of these for each UAVO_ALL_VERSIONS which includes the ones in the srctree
$(foreach githash, $(UAVO_ALL_VERSIONS), $(eval $(call UAVO_COLLECTION_BUILD_TEMPLATE,$(githash))))
.PHONY: uavo-collections_java
uavo-collections_java: $(foreach githash, $(UAVO_ALL_VERSIONS), $(UAVO_COLLECTION_DIR)/$(githash)/uavohash/java-build/uavobjects.jar)
.PHONY: uavo-collections
uavo-collections: uavo-collections_java
.PHONY: uavo-collections_clean
uavo-collections_clean:
$(V0) @echo " CLEAN $(UAVO_COLLECTION_DIR)"
$(V1) [ ! -d "$(UAVO_COLLECTION_DIR)" ] || $(RM) -r $(UAVO_COLLECTION_DIR)
##############################
#
# Flight related components

View File

@ -2,7 +2,6 @@
<classpath>
<classpathentry kind="src" path="gen"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="tests"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>

View File

@ -58,4 +58,4 @@
<service android:name="org.openpilot.androidgcs.telemetry.OPTelemetryService"></service>
</application>
</manifest>
</manifest>

1
androidgcs/assets/uavos Symbolic link
View File

@ -0,0 +1 @@
../../build/androidgcs/assets/uavos

View File

@ -2,14 +2,12 @@
<resources>
<string-array name="connectTypeArray">
<item>None</item>
<item>Fake</item>
<item>Bluetooth</item>
<item>Network</item>
<item>HID</item>
</string-array>
<string-array name="connectTypeValues">
<item>0</item>
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>

View File

@ -114,7 +114,7 @@ public class CompassView extends View {
// Draw the background
canvas.drawCircle(px, py, radius, circlePaint);
// Rotate our perspective so that the ÔtopÕ is
// Rotate our perspective so that the "top" is
// facing the current bearing.
canvas.save();
canvas.rotate((float) -bearing, px, py);

View File

@ -36,7 +36,6 @@ import java.util.Observable;
import java.util.Observer;
import java.util.Set;
import org.junit.Assert;
import org.openpilot.androidgcs.fragments.ObjectManagerFragment;
import org.openpilot.androidgcs.telemetry.OPTelemetryService;
import org.openpilot.androidgcs.telemetry.OPTelemetryService.LocalBinder;
@ -206,7 +205,6 @@ public abstract class ObjectManagerActivity extends Activity {
if (telemetryStatsConnected) {
UAVObject stats = objMngr.getObject("GCSTelemetryStats");
Assert.assertNotNull(stats); // Should not be null if we connected
stats.removeUpdatedObserver(telemetryObserver);
telemetryStatsConnected = false;

View File

@ -26,15 +26,22 @@
*/
package org.openpilot.androidgcs.telemetry;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.lang.ref.WeakReference;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.uavobjects.UAVObjectsInitialize;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.res.AssetManager;
import android.os.Binder;
import android.os.Handler;
import android.os.HandlerThread;
@ -45,6 +52,7 @@ import android.os.Process;
import android.preference.PreferenceManager;
import android.util.Log;
import android.widget.Toast;
import dalvik.system.DexClassLoader;
public class OPTelemetryService extends Service {
@ -72,8 +80,6 @@ public class OPTelemetryService extends Service {
static final int MSG_DISCONNECT = 3;
static final int MSG_TOAST = 100;
private boolean terminate = false;
private Thread activeTelem;
private TelemetryTask telemTask;
@ -103,7 +109,6 @@ public class OPTelemetryService extends Service {
stopSelf(msg.arg2);
break;
case MSG_CONNECT:
terminate = false;
int connection_type;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(OPTelemetryService.this);
try {
@ -115,10 +120,6 @@ public class OPTelemetryService extends Service {
switch(connection_type) {
case 0: // No connection
return;
case 1:
Toast.makeText(getApplicationContext(), "Attempting fake connection", Toast.LENGTH_SHORT).show();
activeTelem = new FakeTelemetryThread();
break;
case 2:
Toast.makeText(getApplicationContext(), "Attempting BT connection", Toast.LENGTH_SHORT).show();
telemTask = new BluetoothUAVTalk(this);
@ -142,7 +143,6 @@ public class OPTelemetryService extends Service {
case MSG_DISCONNECT:
Toast.makeText(getApplicationContext(), "Disconnect requested", Toast.LENGTH_SHORT).show();
if (DEBUG) Log.d(TAG, "Calling disconnect");
terminate = true;
if (telemTask != null) {
telemTask.disconnect();
telemTask = null;
@ -277,148 +277,120 @@ public class OPTelemetryService extends Service {
public UAVObjectManager getObjectManager();
};
// Fake class for testing, simply emits periodic updates on
private class FakeTelemetryThread extends Thread implements TelemTask {
private final UAVObjectManager objMngr;
@Override
public UAVObjectManager getObjectManager() { return objMngr; };
FakeTelemetryThread() {
objMngr = new UAVObjectManager();
UAVObjectsInitialize.register(objMngr);
}
/************************************************************/
/* Everything below here has to do with getting the UAVOs */
/* from the package. This shouldn't really be in the telem */
/* service class but needs to be in this context */
/************************************************************/
@Override
public void run() {
System.out.println("Running fake thread");
private static void copyStream(InputStream inputStream, OutputStream outputStream) throws IOException
{
byte[] buffer = new byte[1024 * 10];
int numRead = inputStream.read(buffer);
while (numRead > 0)
{
outputStream.write(buffer, 0, numRead);
numRead = inputStream.read(buffer);
}
}
private void copyAssets(String JAR_DIR, String JAR_NAME)
{
File jarsDir = getDir(JAR_DIR, MODE_WORLD_READABLE);
AssetManager assetManager = getAssets();
try
{
InputStream inputStream = null;
OutputStream outputStream = null;
try
{
File outputFile = new File(jarsDir, JAR_NAME);
inputStream = assetManager.open("uavos/" + JAR_NAME);
outputStream = new FileOutputStream(outputFile);
copyStream(inputStream, outputStream);
}
finally
{
if (inputStream != null)
inputStream.close();
if (outputStream != null)
outputStream.close();
}
}
catch (IOException e)
{
Log.e(TAG, e.toString(), e);
}
}
Intent intent = new Intent();
intent.setAction(INTENT_ACTION_CONNECTED);
sendBroadcast(intent,null);
/**
* Delete the files in a directories
* @param directory
*/
private static void deleteDirectoryContents(File directory)
{
File contents[] = directory.listFiles();
if (contents != null)
{
for (File file : contents)
{
if (file.isDirectory())
deleteDirectoryContents(file);
//toastMessage("Started fake telemetry thread");
UAVDataObject systemStats = (UAVDataObject) objMngr.getObject("SystemStats");
UAVDataObject attitudeActual = (UAVDataObject) objMngr.getObject("AttitudeActual");
UAVDataObject homeLocation = (UAVDataObject) objMngr.getObject("HomeLocation");
UAVDataObject positionActual = (UAVDataObject) objMngr.getObject("PositionActual");
UAVDataObject systemAlarms = (UAVDataObject) objMngr.getObject("SystemAlarms");
systemAlarms.getField("Alarm").setValue("Warning",0);
systemAlarms.getField("Alarm").setValue("OK",1);
systemAlarms.getField("Alarm").setValue("Critical",2);
systemAlarms.getField("Alarm").setValue("Error",3);
systemAlarms.updated();
homeLocation.getField("Latitude").setDouble(379420315);
homeLocation.getField("Longitude").setDouble(-88330078);
homeLocation.getField("Be").setDouble(26702.78710938,0);
homeLocation.getField("Be").setDouble(-1468.33605957,1);
homeLocation.getField("Be").setDouble(34181.78515625,2);
double roll = 0;
double pitch = 0;
double yaw = 0;
double north = 0;
double east = 0;
while( !terminate ) {
attitudeActual.getField("Roll").setDouble(roll);
attitudeActual.getField("Pitch").setDouble(pitch);
attitudeActual.getField("Yaw").setDouble(yaw);
positionActual.getField("North").setDouble(north += 100);
positionActual.getField("East").setDouble(east += 100);
roll = (roll + 10) % 180;
pitch = (pitch + 10) % 180;
yaw = (yaw + 10) % 360;
systemStats.updated();
attitudeActual.updated();
positionActual.updated();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
break;
}
file.delete();
}
}
}
/*
private class BTTelemetryThread extends Thread implements TelemTask {
/**
* Load the UAVObjects from a JAR file. This method must be called in the
* service context.
* @return True if success, False otherwise
*/
public boolean loadUavobjects(String jar, UAVObjectManager objMngr) {
final String JAR_DIR = "jars";
final String DEX_DIR = "optimized_dex";
private final UAVObjectManager objMngr;
private UAVTalk uavTalk;
private Telemetry tel;
private TelemetryMonitor mon;
copyAssets(JAR_DIR, jar);
@Override
public UAVObjectManager getObjectManager() { return objMngr; };
Log.d(TAG, "Starting dex loader");
File dexDir = getDir(DEX_DIR, Context.MODE_WORLD_READABLE);
BTTelemetryThread() {
objMngr = new UAVObjectManager();
UAVObjectsInitialize.register(objMngr);
// Necessary to get dexOpt to run
if (dexDir.exists())
deleteDirectoryContents(dexDir);
File jarsDir = getDir(JAR_DIR, MODE_WORLD_READABLE);
String classpath = new File(jarsDir, jar).getAbsolutePath();
DexClassLoader loader = new DexClassLoader(classpath, dexDir.getAbsolutePath(), null, getClassLoader());
try {
Class<?> initClass = loader.loadClass("org.openpilot.uavtalk.uavobjects.UAVObjectsInitialize");
Method initMethod = initClass.getMethod("register", UAVObjectManager.class);
initMethod.invoke(null, objMngr);
} catch (ClassNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
return false;
} catch (IllegalAccessException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
return false;
} catch (NoSuchMethodException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
return false;
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return false;
}
@Override
public void run() {
if (DEBUG) Log.d(TAG, "Telemetry Thread started");
Looper.prepare();
BluetoothUAVTalk bt = new BluetoothUAVTalk(OPTelemetryService.this);
for( int i = 0; i < 10; i++ ) {
if (DEBUG) Log.d(TAG, "Attempting Bluetooth Connection");
bt.connect(objMngr);
if (DEBUG) Log.d(TAG, "Done attempting connection");
if( bt.getConnected() )
break;
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
Log.e(TAG, "Thread interrupted while trying to connect");
e.printStackTrace();
return;
}
}
if( ! bt.getConnected() ) {
toastMessage("BT connection failed");
return;
}
toastMessage("BT Connected");
if (DEBUG) Log.d(TAG, "Connected via bluetooth");
uavTalk = bt.getUavtalk();
tel = new Telemetry(uavTalk, objMngr);
mon = new TelemetryMonitor(objMngr,tel);
mon.addObserver(new Observer() {
@Override
public void update(Observable arg0, Object arg1) {
if (DEBUG) Log.d(TAG, "Mon updated. Connected: " + mon.getConnected() + " objects updated: " + mon.getObjectsUpdated());
if(mon.getConnected() ) {
Intent intent = new Intent();
intent.setAction(INTENT_ACTION_CONNECTED);
sendBroadcast(intent,null);
}
}
});
if (DEBUG) Log.d(TAG, "Entering UAVTalk processing loop");
while( !terminate ) {
try {
if( !uavTalk.processInputStream() )
break;
} catch (IOException e) {
// This occurs when they communication stream fails
toastMessage("Connection dropped");
break;
}
}
if (DEBUG) Log.d(TAG, "UAVTalk stream disconnected");
}
};*/
return true;
}
}

View File

@ -8,9 +8,11 @@ import java.util.Observer;
import org.openpilot.uavtalk.Telemetry;
import org.openpilot.uavtalk.TelemetryMonitor;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVObjectField;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVTalk;
import org.openpilot.uavtalk.uavobjects.UAVObjectsInitialize;
import org.openpilot.uavtalk.uavobjects.TelemObjectsInitialize;
import android.content.Intent;
import android.os.Handler;
@ -91,6 +93,32 @@ public abstract class TelemetryTask implements Runnable {
*/
abstract boolean attemptConnection();
private final Observer firmwareIapUpdated = new Observer() {
@Override
public void update(Observable observable, Object data) {
if (DEBUG) Log.d(TAG, "Received firmware IAP Updated message");
UAVObject obj = objMngr.getObject("FirmwareIAPObj");
UAVObjectField description = obj.getField("Description");
if(description == null || description.getNumElements() < 100) {
telemService.toastMessage("Failed to determine UAVO set");
} else {
final int HASH_SIZE_USED = 20;
String jarName = new String();
for(int i = 0; i < HASH_SIZE_USED; i++)
jarName += Integer.toHexString((int) description.getDouble(i+60));
jarName += ".jar";
if (DEBUG) Log.d(TAG, "Attempting to load: " + jarName);
if (telemService.loadUavobjects(jarName, objMngr) ) {
telemService.toastMessage("Loaded appropriate UAVO set");
} else
telemService.toastMessage("Failed to determine UAVO set");
}
obj.removeUpdatedObserver(this);
}
};
/**
* Called when a physical channel is opened
*
@ -103,7 +131,12 @@ public abstract class TelemetryTask implements Runnable {
// be dependent on what is connected (e.g. board and
// version number).
objMngr = new UAVObjectManager();
UAVObjectsInitialize.register(objMngr);
TelemObjectsInitialize.register(objMngr);
// Register to get an update from FirmwareIAP in order to register
// the appropriate objects
UAVObject obj = objMngr.getObject("FirmwareIAPObj");
obj.addUpdatedObserver(firmwareIapUpdated);
// Create the required telemetry objects attached to this
// data stream

View File

@ -70,7 +70,6 @@ public class UAVObjectManager {
*/
public synchronized boolean registerObject(UAVDataObject obj) throws Exception
{
// QMutexLocker locker(mutex);
ListIterator<List<UAVObject>> objIt = objects.listIterator(0);

View File

@ -1,150 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The accel data.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The accel data.
generated from accels.xml
**/
public class Accels extends UAVDataObject {
public Accels() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> xElemNames = new ArrayList<String>();
xElemNames.add("0");
fields.add( new UAVObjectField("x", "m/s^2", UAVObjectField.FieldType.FLOAT32, xElemNames, null) );
List<String> yElemNames = new ArrayList<String>();
yElemNames.add("0");
fields.add( new UAVObjectField("y", "m/s^2", UAVObjectField.FieldType.FLOAT32, yElemNames, null) );
List<String> zElemNames = new ArrayList<String>();
zElemNames.add("0");
fields.add( new UAVObjectField("z", "m/s^2", UAVObjectField.FieldType.FLOAT32, zElemNames, null) );
List<String> temperatureElemNames = new ArrayList<String>();
temperatureElemNames.add("0");
fields.add( new UAVObjectField("temperature", "deg C", UAVObjectField.FieldType.FLOAT32, temperatureElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
Accels obj = new Accels();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public Accels GetInstance(UAVObjectManager objMngr, long instID)
{
return (Accels)(objMngr.getObject(Accels.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xDD9D5FC0l;
protected static final String NAME = "Accels";
protected static String DESCRIPTION = "The accel data.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,138 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Desired Auxillary actuator settings. Comes from @ref ManualControlModule.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Desired Auxillary actuator settings. Comes from @ref ManualControlModule.
generated from accessorydesired.xml
**/
public class AccessoryDesired extends UAVDataObject {
public AccessoryDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> AccessoryValElemNames = new ArrayList<String>();
AccessoryValElemNames.add("0");
fields.add( new UAVObjectField("AccessoryVal", "", UAVObjectField.FieldType.FLOAT32, AccessoryValElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
AccessoryDesired obj = new AccessoryDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public AccessoryDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (AccessoryDesired)(objMngr.getObject(AccessoryDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xC409985Al;
protected static final String NAME = "AccessoryDesired";
protected static String DESCRIPTION = "Desired Auxillary actuator settings. Comes from @ref ManualControlModule.";
protected static final boolean ISSINGLEINST = 0 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,159 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Contains the pulse duration sent to each of the channels. Set by @ref ActuatorModule
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Contains the pulse duration sent to each of the channels. Set by @ref ActuatorModule
generated from actuatorcommand.xml
**/
public class ActuatorCommand extends UAVDataObject {
public ActuatorCommand() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ChannelElemNames = new ArrayList<String>();
ChannelElemNames.add("0");
ChannelElemNames.add("1");
ChannelElemNames.add("2");
ChannelElemNames.add("3");
ChannelElemNames.add("4");
ChannelElemNames.add("5");
ChannelElemNames.add("6");
ChannelElemNames.add("7");
ChannelElemNames.add("8");
ChannelElemNames.add("9");
fields.add( new UAVObjectField("Channel", "us", UAVObjectField.FieldType.INT16, ChannelElemNames, null) );
List<String> MaxUpdateTimeElemNames = new ArrayList<String>();
MaxUpdateTimeElemNames.add("0");
fields.add( new UAVObjectField("MaxUpdateTime", "ms", UAVObjectField.FieldType.UINT16, MaxUpdateTimeElemNames, null) );
List<String> UpdateTimeElemNames = new ArrayList<String>();
UpdateTimeElemNames.add("0");
fields.add( new UAVObjectField("UpdateTime", "ms", UAVObjectField.FieldType.UINT8, UpdateTimeElemNames, null) );
List<String> NumFailedUpdatesElemNames = new ArrayList<String>();
NumFailedUpdatesElemNames.add("0");
fields.add( new UAVObjectField("NumFailedUpdates", "", UAVObjectField.FieldType.UINT8, NumFailedUpdatesElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
ActuatorCommand obj = new ActuatorCommand();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public ActuatorCommand GetInstance(UAVObjectManager objMngr, long instID)
{
return (ActuatorCommand)(objMngr.getObject(ActuatorCommand.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x5324CB8l;
protected static final String NAME = "ActuatorCommand";
protected static String DESCRIPTION = "Contains the pulse duration sent to each of the channels. Set by @ref ActuatorModule";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,158 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Desired raw, pitch and yaw actuator settings. Comes from either @ref StabilizationModule or @ref ManualControlModule depending on FlightMode.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Desired raw, pitch and yaw actuator settings. Comes from either @ref StabilizationModule or @ref ManualControlModule depending on FlightMode.
generated from actuatordesired.xml
**/
public class ActuatorDesired extends UAVDataObject {
public ActuatorDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> RollElemNames = new ArrayList<String>();
RollElemNames.add("0");
fields.add( new UAVObjectField("Roll", "%", UAVObjectField.FieldType.FLOAT32, RollElemNames, null) );
List<String> PitchElemNames = new ArrayList<String>();
PitchElemNames.add("0");
fields.add( new UAVObjectField("Pitch", "%", UAVObjectField.FieldType.FLOAT32, PitchElemNames, null) );
List<String> YawElemNames = new ArrayList<String>();
YawElemNames.add("0");
fields.add( new UAVObjectField("Yaw", "%", UAVObjectField.FieldType.FLOAT32, YawElemNames, null) );
List<String> ThrottleElemNames = new ArrayList<String>();
ThrottleElemNames.add("0");
fields.add( new UAVObjectField("Throttle", "%", UAVObjectField.FieldType.FLOAT32, ThrottleElemNames, null) );
List<String> UpdateTimeElemNames = new ArrayList<String>();
UpdateTimeElemNames.add("0");
fields.add( new UAVObjectField("UpdateTime", "ms", UAVObjectField.FieldType.FLOAT32, UpdateTimeElemNames, null) );
List<String> NumLongUpdatesElemNames = new ArrayList<String>();
NumLongUpdatesElemNames.add("0");
fields.add( new UAVObjectField("NumLongUpdates", "ms", UAVObjectField.FieldType.FLOAT32, NumLongUpdatesElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
ActuatorDesired obj = new ActuatorDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public ActuatorDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (ActuatorDesired)(objMngr.getObject(ActuatorDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xCA4BC4A4l;
protected static final String NAME = "ActuatorDesired";
protected static String DESCRIPTION = "Desired raw, pitch and yaw actuator settings. Comes from either @ref StabilizationModule or @ref ManualControlModule depending on FlightMode.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,273 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref ActuatorModule that controls the channel assignments for the mixer based on AircraftType
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref ActuatorModule that controls the channel assignments for the mixer based on AircraftType
generated from actuatorsettings.xml
**/
public class ActuatorSettings extends UAVDataObject {
public ActuatorSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ChannelUpdateFreqElemNames = new ArrayList<String>();
ChannelUpdateFreqElemNames.add("0");
ChannelUpdateFreqElemNames.add("1");
ChannelUpdateFreqElemNames.add("2");
ChannelUpdateFreqElemNames.add("3");
fields.add( new UAVObjectField("ChannelUpdateFreq", "Hz", UAVObjectField.FieldType.UINT16, ChannelUpdateFreqElemNames, null) );
List<String> ChannelMaxElemNames = new ArrayList<String>();
ChannelMaxElemNames.add("0");
ChannelMaxElemNames.add("1");
ChannelMaxElemNames.add("2");
ChannelMaxElemNames.add("3");
ChannelMaxElemNames.add("4");
ChannelMaxElemNames.add("5");
ChannelMaxElemNames.add("6");
ChannelMaxElemNames.add("7");
ChannelMaxElemNames.add("8");
ChannelMaxElemNames.add("9");
fields.add( new UAVObjectField("ChannelMax", "us", UAVObjectField.FieldType.INT16, ChannelMaxElemNames, null) );
List<String> ChannelNeutralElemNames = new ArrayList<String>();
ChannelNeutralElemNames.add("0");
ChannelNeutralElemNames.add("1");
ChannelNeutralElemNames.add("2");
ChannelNeutralElemNames.add("3");
ChannelNeutralElemNames.add("4");
ChannelNeutralElemNames.add("5");
ChannelNeutralElemNames.add("6");
ChannelNeutralElemNames.add("7");
ChannelNeutralElemNames.add("8");
ChannelNeutralElemNames.add("9");
fields.add( new UAVObjectField("ChannelNeutral", "us", UAVObjectField.FieldType.INT16, ChannelNeutralElemNames, null) );
List<String> ChannelMinElemNames = new ArrayList<String>();
ChannelMinElemNames.add("0");
ChannelMinElemNames.add("1");
ChannelMinElemNames.add("2");
ChannelMinElemNames.add("3");
ChannelMinElemNames.add("4");
ChannelMinElemNames.add("5");
ChannelMinElemNames.add("6");
ChannelMinElemNames.add("7");
ChannelMinElemNames.add("8");
ChannelMinElemNames.add("9");
fields.add( new UAVObjectField("ChannelMin", "us", UAVObjectField.FieldType.INT16, ChannelMinElemNames, null) );
List<String> ChannelTypeElemNames = new ArrayList<String>();
ChannelTypeElemNames.add("0");
ChannelTypeElemNames.add("1");
ChannelTypeElemNames.add("2");
ChannelTypeElemNames.add("3");
ChannelTypeElemNames.add("4");
ChannelTypeElemNames.add("5");
ChannelTypeElemNames.add("6");
ChannelTypeElemNames.add("7");
ChannelTypeElemNames.add("8");
ChannelTypeElemNames.add("9");
List<String> ChannelTypeEnumOptions = new ArrayList<String>();
ChannelTypeEnumOptions.add("PWM");
ChannelTypeEnumOptions.add("MK");
ChannelTypeEnumOptions.add("ASTEC4");
ChannelTypeEnumOptions.add("PWM Alarm Buzzer");
fields.add( new UAVObjectField("ChannelType", "", UAVObjectField.FieldType.ENUM, ChannelTypeElemNames, ChannelTypeEnumOptions) );
List<String> ChannelAddrElemNames = new ArrayList<String>();
ChannelAddrElemNames.add("0");
ChannelAddrElemNames.add("1");
ChannelAddrElemNames.add("2");
ChannelAddrElemNames.add("3");
ChannelAddrElemNames.add("4");
ChannelAddrElemNames.add("5");
ChannelAddrElemNames.add("6");
ChannelAddrElemNames.add("7");
ChannelAddrElemNames.add("8");
ChannelAddrElemNames.add("9");
fields.add( new UAVObjectField("ChannelAddr", "", UAVObjectField.FieldType.UINT8, ChannelAddrElemNames, null) );
List<String> MotorsSpinWhileArmedElemNames = new ArrayList<String>();
MotorsSpinWhileArmedElemNames.add("0");
List<String> MotorsSpinWhileArmedEnumOptions = new ArrayList<String>();
MotorsSpinWhileArmedEnumOptions.add("FALSE");
MotorsSpinWhileArmedEnumOptions.add("TRUE");
fields.add( new UAVObjectField("MotorsSpinWhileArmed", "", UAVObjectField.FieldType.ENUM, MotorsSpinWhileArmedElemNames, MotorsSpinWhileArmedEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("ChannelUpdateFreq").setValue(50,0);
getField("ChannelUpdateFreq").setValue(50,1);
getField("ChannelUpdateFreq").setValue(50,2);
getField("ChannelUpdateFreq").setValue(50,3);
getField("ChannelMax").setValue(1000,0);
getField("ChannelMax").setValue(1000,1);
getField("ChannelMax").setValue(1000,2);
getField("ChannelMax").setValue(1000,3);
getField("ChannelMax").setValue(1000,4);
getField("ChannelMax").setValue(1000,5);
getField("ChannelMax").setValue(1000,6);
getField("ChannelMax").setValue(1000,7);
getField("ChannelMax").setValue(1000,8);
getField("ChannelMax").setValue(1000,9);
getField("ChannelNeutral").setValue(1000,0);
getField("ChannelNeutral").setValue(1000,1);
getField("ChannelNeutral").setValue(1000,2);
getField("ChannelNeutral").setValue(1000,3);
getField("ChannelNeutral").setValue(1000,4);
getField("ChannelNeutral").setValue(1000,5);
getField("ChannelNeutral").setValue(1000,6);
getField("ChannelNeutral").setValue(1000,7);
getField("ChannelNeutral").setValue(1000,8);
getField("ChannelNeutral").setValue(1000,9);
getField("ChannelMin").setValue(1000,0);
getField("ChannelMin").setValue(1000,1);
getField("ChannelMin").setValue(1000,2);
getField("ChannelMin").setValue(1000,3);
getField("ChannelMin").setValue(1000,4);
getField("ChannelMin").setValue(1000,5);
getField("ChannelMin").setValue(1000,6);
getField("ChannelMin").setValue(1000,7);
getField("ChannelMin").setValue(1000,8);
getField("ChannelMin").setValue(1000,9);
getField("ChannelType").setValue("PWM",0);
getField("ChannelType").setValue("PWM",1);
getField("ChannelType").setValue("PWM",2);
getField("ChannelType").setValue("PWM",3);
getField("ChannelType").setValue("PWM",4);
getField("ChannelType").setValue("PWM",5);
getField("ChannelType").setValue("PWM",6);
getField("ChannelType").setValue("PWM",7);
getField("ChannelType").setValue("PWM",8);
getField("ChannelType").setValue("PWM",9);
getField("ChannelAddr").setValue(0,0);
getField("ChannelAddr").setValue(1,1);
getField("ChannelAddr").setValue(2,2);
getField("ChannelAddr").setValue(3,3);
getField("ChannelAddr").setValue(4,4);
getField("ChannelAddr").setValue(5,5);
getField("ChannelAddr").setValue(6,6);
getField("ChannelAddr").setValue(7,7);
getField("ChannelAddr").setValue(8,8);
getField("ChannelAddr").setValue(9,9);
getField("MotorsSpinWhileArmed").setValue("FALSE");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
ActuatorSettings obj = new ActuatorSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public ActuatorSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (ActuatorSettings)(objMngr.getObject(ActuatorSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x7D555646l;
protected static final String NAME = "ActuatorSettings";
protected static String DESCRIPTION = "Settings for the @ref ActuatorModule that controls the channel assignments for the mixer based on AircraftType";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The output on the kalman filter on altitude.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The output on the kalman filter on altitude.
generated from altholdsmoothed.xml
**/
public class AltHoldSmoothed extends UAVDataObject {
public AltHoldSmoothed() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> AltitudeElemNames = new ArrayList<String>();
AltitudeElemNames.add("0");
fields.add( new UAVObjectField("Altitude", "m", UAVObjectField.FieldType.FLOAT32, AltitudeElemNames, null) );
List<String> VelocityElemNames = new ArrayList<String>();
VelocityElemNames.add("0");
fields.add( new UAVObjectField("Velocity", "m/s", UAVObjectField.FieldType.FLOAT32, VelocityElemNames, null) );
List<String> AccelElemNames = new ArrayList<String>();
AccelElemNames.add("0");
fields.add( new UAVObjectField("Accel", "m/s^2", UAVObjectField.FieldType.FLOAT32, AccelElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
AltHoldSmoothed obj = new AltHoldSmoothed();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public AltHoldSmoothed GetInstance(UAVObjectManager objMngr, long instID)
{
return (AltHoldSmoothed)(objMngr.getObject(AltHoldSmoothed.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x2BC6B9D2l;
protected static final String NAME = "AltHoldSmoothed";
protected static String DESCRIPTION = "The output on the kalman filter on altitude.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,150 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Holds the desired altitude (from manual control) as well as the desired attitude to pass through
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Holds the desired altitude (from manual control) as well as the desired attitude to pass through
generated from altitudeholddesired.xml
**/
public class AltitudeHoldDesired extends UAVDataObject {
public AltitudeHoldDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> AltitudeElemNames = new ArrayList<String>();
AltitudeElemNames.add("0");
fields.add( new UAVObjectField("Altitude", "m", UAVObjectField.FieldType.FLOAT32, AltitudeElemNames, null) );
List<String> RollElemNames = new ArrayList<String>();
RollElemNames.add("0");
fields.add( new UAVObjectField("Roll", "deg", UAVObjectField.FieldType.FLOAT32, RollElemNames, null) );
List<String> PitchElemNames = new ArrayList<String>();
PitchElemNames.add("0");
fields.add( new UAVObjectField("Pitch", "deg", UAVObjectField.FieldType.FLOAT32, PitchElemNames, null) );
List<String> YawElemNames = new ArrayList<String>();
YawElemNames.add("0");
fields.add( new UAVObjectField("Yaw", "deg/s", UAVObjectField.FieldType.FLOAT32, YawElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
AltitudeHoldDesired obj = new AltitudeHoldDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public AltitudeHoldDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (AltitudeHoldDesired)(objMngr.getObject(AltitudeHoldDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x495BAD6El;
protected static final String NAME = "AltitudeHoldDesired";
protected static String DESCRIPTION = "Holds the desired altitude (from manual control) as well as the desired attitude to pass through";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,169 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref AltitudeHold module
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref AltitudeHold module
generated from altitudeholdsettings.xml
**/
public class AltitudeHoldSettings extends UAVDataObject {
public AltitudeHoldSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> KpElemNames = new ArrayList<String>();
KpElemNames.add("0");
fields.add( new UAVObjectField("Kp", "throttle/m", UAVObjectField.FieldType.FLOAT32, KpElemNames, null) );
List<String> KiElemNames = new ArrayList<String>();
KiElemNames.add("0");
fields.add( new UAVObjectField("Ki", "throttle/m", UAVObjectField.FieldType.FLOAT32, KiElemNames, null) );
List<String> KdElemNames = new ArrayList<String>();
KdElemNames.add("0");
fields.add( new UAVObjectField("Kd", "throttle/m", UAVObjectField.FieldType.FLOAT32, KdElemNames, null) );
List<String> KaElemNames = new ArrayList<String>();
KaElemNames.add("0");
fields.add( new UAVObjectField("Ka", "throttle/(m/s^2)", UAVObjectField.FieldType.FLOAT32, KaElemNames, null) );
List<String> PressureNoiseElemNames = new ArrayList<String>();
PressureNoiseElemNames.add("0");
fields.add( new UAVObjectField("PressureNoise", "m", UAVObjectField.FieldType.FLOAT32, PressureNoiseElemNames, null) );
List<String> AccelNoiseElemNames = new ArrayList<String>();
AccelNoiseElemNames.add("0");
fields.add( new UAVObjectField("AccelNoise", "m/s^2", UAVObjectField.FieldType.FLOAT32, AccelNoiseElemNames, null) );
List<String> AccelDriftElemNames = new ArrayList<String>();
AccelDriftElemNames.add("0");
fields.add( new UAVObjectField("AccelDrift", "m/s^2", UAVObjectField.FieldType.FLOAT32, AccelDriftElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Kp").setValue(0.025);
getField("Ki").setValue(0.025);
getField("Kd").setValue(0.25);
getField("Ka").setValue(0);
getField("PressureNoise").setValue(0.01);
getField("AccelNoise").setValue(10);
getField("AccelDrift").setValue(0.001);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
AltitudeHoldSettings obj = new AltitudeHoldSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public AltitudeHoldSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (AltitudeHoldSettings)(objMngr.getObject(AltitudeHoldSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xFEC55B42l;
protected static final String NAME = "AltitudeHoldSettings";
protected static String DESCRIPTION = "Settings for the @ref AltitudeHold module";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,162 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The updated Attitude estimation from @ref AHRSCommsModule.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The updated Attitude estimation from @ref AHRSCommsModule.
generated from attitudeactual.xml
**/
public class AttitudeActual extends UAVDataObject {
public AttitudeActual() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> q1ElemNames = new ArrayList<String>();
q1ElemNames.add("0");
fields.add( new UAVObjectField("q1", "", UAVObjectField.FieldType.FLOAT32, q1ElemNames, null) );
List<String> q2ElemNames = new ArrayList<String>();
q2ElemNames.add("0");
fields.add( new UAVObjectField("q2", "", UAVObjectField.FieldType.FLOAT32, q2ElemNames, null) );
List<String> q3ElemNames = new ArrayList<String>();
q3ElemNames.add("0");
fields.add( new UAVObjectField("q3", "", UAVObjectField.FieldType.FLOAT32, q3ElemNames, null) );
List<String> q4ElemNames = new ArrayList<String>();
q4ElemNames.add("0");
fields.add( new UAVObjectField("q4", "", UAVObjectField.FieldType.FLOAT32, q4ElemNames, null) );
List<String> RollElemNames = new ArrayList<String>();
RollElemNames.add("0");
fields.add( new UAVObjectField("Roll", "degrees", UAVObjectField.FieldType.FLOAT32, RollElemNames, null) );
List<String> PitchElemNames = new ArrayList<String>();
PitchElemNames.add("0");
fields.add( new UAVObjectField("Pitch", "degrees", UAVObjectField.FieldType.FLOAT32, PitchElemNames, null) );
List<String> YawElemNames = new ArrayList<String>();
YawElemNames.add("0");
fields.add( new UAVObjectField("Yaw", "degrees", UAVObjectField.FieldType.FLOAT32, YawElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 100;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
AttitudeActual obj = new AttitudeActual();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public AttitudeActual GetInstance(UAVObjectManager objMngr, long instID)
{
return (AttitudeActual)(objMngr.getObject(AttitudeActual.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x33DAD5E6l;
protected static final String NAME = "AttitudeActual";
protected static String DESCRIPTION = "The updated Attitude estimation from @ref AHRSCommsModule.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,206 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref Attitude module used on CopterControl
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref Attitude module used on CopterControl
generated from attitudesettings.xml
**/
public class AttitudeSettings extends UAVDataObject {
public AttitudeSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> GyroGainElemNames = new ArrayList<String>();
GyroGainElemNames.add("0");
fields.add( new UAVObjectField("GyroGain", "(rad/s)/lsb", UAVObjectField.FieldType.FLOAT32, GyroGainElemNames, null) );
List<String> AccelKpElemNames = new ArrayList<String>();
AccelKpElemNames.add("0");
fields.add( new UAVObjectField("AccelKp", "channel", UAVObjectField.FieldType.FLOAT32, AccelKpElemNames, null) );
List<String> AccelKiElemNames = new ArrayList<String>();
AccelKiElemNames.add("0");
fields.add( new UAVObjectField("AccelKi", "channel", UAVObjectField.FieldType.FLOAT32, AccelKiElemNames, null) );
List<String> YawBiasRateElemNames = new ArrayList<String>();
YawBiasRateElemNames.add("0");
fields.add( new UAVObjectField("YawBiasRate", "channel", UAVObjectField.FieldType.FLOAT32, YawBiasRateElemNames, null) );
List<String> AccelBiasElemNames = new ArrayList<String>();
AccelBiasElemNames.add("X");
AccelBiasElemNames.add("Y");
AccelBiasElemNames.add("Z");
fields.add( new UAVObjectField("AccelBias", "lsb", UAVObjectField.FieldType.INT16, AccelBiasElemNames, null) );
List<String> GyroBiasElemNames = new ArrayList<String>();
GyroBiasElemNames.add("X");
GyroBiasElemNames.add("Y");
GyroBiasElemNames.add("Z");
fields.add( new UAVObjectField("GyroBias", "deg/s * 100", UAVObjectField.FieldType.INT16, GyroBiasElemNames, null) );
List<String> BoardRotationElemNames = new ArrayList<String>();
BoardRotationElemNames.add("Roll");
BoardRotationElemNames.add("Pitch");
BoardRotationElemNames.add("Yaw");
fields.add( new UAVObjectField("BoardRotation", "deg", UAVObjectField.FieldType.INT16, BoardRotationElemNames, null) );
List<String> ZeroDuringArmingElemNames = new ArrayList<String>();
ZeroDuringArmingElemNames.add("0");
List<String> ZeroDuringArmingEnumOptions = new ArrayList<String>();
ZeroDuringArmingEnumOptions.add("FALSE");
ZeroDuringArmingEnumOptions.add("TRUE");
fields.add( new UAVObjectField("ZeroDuringArming", "channel", UAVObjectField.FieldType.ENUM, ZeroDuringArmingElemNames, ZeroDuringArmingEnumOptions) );
List<String> BiasCorrectGyroElemNames = new ArrayList<String>();
BiasCorrectGyroElemNames.add("0");
List<String> BiasCorrectGyroEnumOptions = new ArrayList<String>();
BiasCorrectGyroEnumOptions.add("FALSE");
BiasCorrectGyroEnumOptions.add("TRUE");
fields.add( new UAVObjectField("BiasCorrectGyro", "channel", UAVObjectField.FieldType.ENUM, BiasCorrectGyroElemNames, BiasCorrectGyroEnumOptions) );
List<String> TrimFlightElemNames = new ArrayList<String>();
TrimFlightElemNames.add("0");
List<String> TrimFlightEnumOptions = new ArrayList<String>();
TrimFlightEnumOptions.add("NORMAL");
TrimFlightEnumOptions.add("START");
TrimFlightEnumOptions.add("LOAD");
fields.add( new UAVObjectField("TrimFlight", "channel", UAVObjectField.FieldType.ENUM, TrimFlightElemNames, TrimFlightEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("GyroGain").setValue(0.42);
getField("AccelKp").setValue(0.05);
getField("AccelKi").setValue(0.0001);
getField("YawBiasRate").setValue(1e-06);
getField("AccelBias").setValue(0,0);
getField("AccelBias").setValue(0,1);
getField("AccelBias").setValue(0,2);
getField("GyroBias").setValue(0,0);
getField("GyroBias").setValue(0,1);
getField("GyroBias").setValue(0,2);
getField("BoardRotation").setValue(0,0);
getField("BoardRotation").setValue(0,1);
getField("BoardRotation").setValue(0,2);
getField("ZeroDuringArming").setValue("TRUE");
getField("BiasCorrectGyro").setValue("TRUE");
getField("TrimFlight").setValue("NORMAL");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
AttitudeSettings obj = new AttitudeSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public AttitudeSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (AttitudeSettings)(objMngr.getObject(AttitudeSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xC307BC4Al;
protected static final String NAME = "AttitudeSettings";
protected static String DESCRIPTION = "Settings for the @ref Attitude module used on CopterControl";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,174 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The simulated Attitude estimation from @ref Sensors.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The simulated Attitude estimation from @ref Sensors.
generated from attitudesimulated.xml
**/
public class AttitudeSimulated extends UAVDataObject {
public AttitudeSimulated() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> q1ElemNames = new ArrayList<String>();
q1ElemNames.add("0");
fields.add( new UAVObjectField("q1", "", UAVObjectField.FieldType.FLOAT32, q1ElemNames, null) );
List<String> q2ElemNames = new ArrayList<String>();
q2ElemNames.add("0");
fields.add( new UAVObjectField("q2", "", UAVObjectField.FieldType.FLOAT32, q2ElemNames, null) );
List<String> q3ElemNames = new ArrayList<String>();
q3ElemNames.add("0");
fields.add( new UAVObjectField("q3", "", UAVObjectField.FieldType.FLOAT32, q3ElemNames, null) );
List<String> q4ElemNames = new ArrayList<String>();
q4ElemNames.add("0");
fields.add( new UAVObjectField("q4", "", UAVObjectField.FieldType.FLOAT32, q4ElemNames, null) );
List<String> RollElemNames = new ArrayList<String>();
RollElemNames.add("0");
fields.add( new UAVObjectField("Roll", "degrees", UAVObjectField.FieldType.FLOAT32, RollElemNames, null) );
List<String> PitchElemNames = new ArrayList<String>();
PitchElemNames.add("0");
fields.add( new UAVObjectField("Pitch", "degrees", UAVObjectField.FieldType.FLOAT32, PitchElemNames, null) );
List<String> YawElemNames = new ArrayList<String>();
YawElemNames.add("0");
fields.add( new UAVObjectField("Yaw", "degrees", UAVObjectField.FieldType.FLOAT32, YawElemNames, null) );
List<String> VelocityElemNames = new ArrayList<String>();
VelocityElemNames.add("North");
VelocityElemNames.add("East");
VelocityElemNames.add("Down");
fields.add( new UAVObjectField("Velocity", "m/s", UAVObjectField.FieldType.FLOAT32, VelocityElemNames, null) );
List<String> PositionElemNames = new ArrayList<String>();
PositionElemNames.add("North");
PositionElemNames.add("East");
PositionElemNames.add("Down");
fields.add( new UAVObjectField("Position", "m", UAVObjectField.FieldType.FLOAT32, PositionElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 100;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
AttitudeSimulated obj = new AttitudeSimulated();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public AttitudeSimulated GetInstance(UAVObjectManager objMngr, long instID)
{
return (AttitudeSimulated)(objMngr.getObject(AttitudeSimulated.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x9266CE74l;
protected static final String NAME = "AttitudeSimulated";
protected static String DESCRIPTION = "The simulated Attitude estimation from @ref Sensors.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,153 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The raw data from the dynamic pressure sensor with pressure, temperature and airspeed.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The raw data from the dynamic pressure sensor with pressure, temperature and airspeed.
generated from baroairspeed.xml
**/
public class BaroAirspeed extends UAVDataObject {
public BaroAirspeed() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> AirspeedElemNames = new ArrayList<String>();
AirspeedElemNames.add("0");
fields.add( new UAVObjectField("Airspeed", "m/s", UAVObjectField.FieldType.FLOAT32, AirspeedElemNames, null) );
List<String> SensorValueElemNames = new ArrayList<String>();
SensorValueElemNames.add("0");
fields.add( new UAVObjectField("SensorValue", "raw", UAVObjectField.FieldType.UINT16, SensorValueElemNames, null) );
List<String> ZeroPointElemNames = new ArrayList<String>();
ZeroPointElemNames.add("0");
fields.add( new UAVObjectField("ZeroPoint", "raw", UAVObjectField.FieldType.UINT16, ZeroPointElemNames, null) );
List<String> ConnectedElemNames = new ArrayList<String>();
ConnectedElemNames.add("0");
List<String> ConnectedEnumOptions = new ArrayList<String>();
ConnectedEnumOptions.add("False");
ConnectedEnumOptions.add("True");
fields.add( new UAVObjectField("Connected", "", UAVObjectField.FieldType.ENUM, ConnectedElemNames, ConnectedEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
BaroAirspeed obj = new BaroAirspeed();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public BaroAirspeed GetInstance(UAVObjectManager objMngr, long instID)
{
return (BaroAirspeed)(objMngr.getObject(BaroAirspeed.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x169EA4Al;
protected static final String NAME = "BaroAirspeed";
protected static String DESCRIPTION = "The raw data from the dynamic pressure sensor with pressure, temperature and airspeed.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The raw data from the barometric sensor with pressure, temperature and altitude estimate.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The raw data from the barometric sensor with pressure, temperature and altitude estimate.
generated from baroaltitude.xml
**/
public class BaroAltitude extends UAVDataObject {
public BaroAltitude() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> AltitudeElemNames = new ArrayList<String>();
AltitudeElemNames.add("0");
fields.add( new UAVObjectField("Altitude", "m", UAVObjectField.FieldType.FLOAT32, AltitudeElemNames, null) );
List<String> TemperatureElemNames = new ArrayList<String>();
TemperatureElemNames.add("0");
fields.add( new UAVObjectField("Temperature", "C", UAVObjectField.FieldType.FLOAT32, TemperatureElemNames, null) );
List<String> PressureElemNames = new ArrayList<String>();
PressureElemNames.add("0");
fields.add( new UAVObjectField("Pressure", "kPa", UAVObjectField.FieldType.FLOAT32, PressureElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
BaroAltitude obj = new BaroAltitude();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public BaroAltitude GetInstance(UAVObjectManager objMngr, long instID)
{
return (BaroAltitude)(objMngr.getObject(BaroAltitude.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x99622E6Al;
protected static final String NAME = "BaroAltitude";
protected static String DESCRIPTION = "The raw data from the barometric sensor with pressure, temperature and altitude estimate.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Desired camera outputs. Comes from @ref CameraStabilization module.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Desired camera outputs. Comes from @ref CameraStabilization module.
generated from cameradesired.xml
**/
public class CameraDesired extends UAVDataObject {
public CameraDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> RollElemNames = new ArrayList<String>();
RollElemNames.add("0");
fields.add( new UAVObjectField("Roll", "", UAVObjectField.FieldType.FLOAT32, RollElemNames, null) );
List<String> PitchElemNames = new ArrayList<String>();
PitchElemNames.add("0");
fields.add( new UAVObjectField("Pitch", "", UAVObjectField.FieldType.FLOAT32, PitchElemNames, null) );
List<String> YawElemNames = new ArrayList<String>();
YawElemNames.add("0");
fields.add( new UAVObjectField("Yaw", "", UAVObjectField.FieldType.FLOAT32, YawElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
CameraDesired obj = new CameraDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public CameraDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (CameraDesired)(objMngr.getObject(CameraDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x531F544El;
protected static final String NAME = "CameraDesired";
protected static String DESCRIPTION = "Desired camera outputs. Comes from @ref CameraStabilization module.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,204 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref CameraStab mmodule
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref CameraStab mmodule
generated from camerastabsettings.xml
**/
public class CameraStabSettings extends UAVDataObject {
public CameraStabSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> MaxAxisLockRateElemNames = new ArrayList<String>();
MaxAxisLockRateElemNames.add("0");
fields.add( new UAVObjectField("MaxAxisLockRate", "deg/s", UAVObjectField.FieldType.FLOAT32, MaxAxisLockRateElemNames, null) );
List<String> ResponseTimeElemNames = new ArrayList<String>();
ResponseTimeElemNames.add("Roll");
ResponseTimeElemNames.add("Pitch");
ResponseTimeElemNames.add("Yaw");
fields.add( new UAVObjectField("ResponseTime", "ms", UAVObjectField.FieldType.UINT16, ResponseTimeElemNames, null) );
List<String> InputElemNames = new ArrayList<String>();
InputElemNames.add("Roll");
InputElemNames.add("Pitch");
InputElemNames.add("Yaw");
List<String> InputEnumOptions = new ArrayList<String>();
InputEnumOptions.add("Accessory0");
InputEnumOptions.add("Accessory1");
InputEnumOptions.add("Accessory2");
InputEnumOptions.add("Accessory3");
InputEnumOptions.add("Accessory4");
InputEnumOptions.add("Accessory5");
InputEnumOptions.add("None");
fields.add( new UAVObjectField("Input", "channel", UAVObjectField.FieldType.ENUM, InputElemNames, InputEnumOptions) );
List<String> InputRangeElemNames = new ArrayList<String>();
InputRangeElemNames.add("Roll");
InputRangeElemNames.add("Pitch");
InputRangeElemNames.add("Yaw");
fields.add( new UAVObjectField("InputRange", "deg", UAVObjectField.FieldType.UINT8, InputRangeElemNames, null) );
List<String> InputRateElemNames = new ArrayList<String>();
InputRateElemNames.add("Roll");
InputRateElemNames.add("Pitch");
InputRateElemNames.add("Yaw");
fields.add( new UAVObjectField("InputRate", "deg/s", UAVObjectField.FieldType.UINT8, InputRateElemNames, null) );
List<String> StabilizationModeElemNames = new ArrayList<String>();
StabilizationModeElemNames.add("Roll");
StabilizationModeElemNames.add("Pitch");
StabilizationModeElemNames.add("Yaw");
List<String> StabilizationModeEnumOptions = new ArrayList<String>();
StabilizationModeEnumOptions.add("Attitude");
StabilizationModeEnumOptions.add("AxisLock");
fields.add( new UAVObjectField("StabilizationMode", "", UAVObjectField.FieldType.ENUM, StabilizationModeElemNames, StabilizationModeEnumOptions) );
List<String> OutputRangeElemNames = new ArrayList<String>();
OutputRangeElemNames.add("Roll");
OutputRangeElemNames.add("Pitch");
OutputRangeElemNames.add("Yaw");
fields.add( new UAVObjectField("OutputRange", "deg", UAVObjectField.FieldType.UINT8, OutputRangeElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("MaxAxisLockRate").setValue(1);
getField("ResponseTime").setValue(150,0);
getField("ResponseTime").setValue(150,1);
getField("ResponseTime").setValue(150,2);
getField("Input").setValue("None",0);
getField("Input").setValue("None",1);
getField("Input").setValue("None",2);
getField("InputRange").setValue(20,0);
getField("InputRange").setValue(20,1);
getField("InputRange").setValue(20,2);
getField("InputRate").setValue(50,0);
getField("InputRate").setValue(50,1);
getField("InputRate").setValue(50,2);
getField("StabilizationMode").setValue("Attitude",0);
getField("StabilizationMode").setValue("Attitude",1);
getField("StabilizationMode").setValue("Attitude",2);
getField("OutputRange").setValue(20,0);
getField("OutputRange").setValue(20,1);
getField("OutputRange").setValue(20,2);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
CameraStabSettings obj = new CameraStabSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public CameraStabSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (CameraStabSettings)(objMngr.getObject(CameraStabSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x3B95DDBAl;
protected static final String NAME = "CameraStabSettings";
protected static String DESCRIPTION = "Settings for the @ref CameraStab mmodule";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Allows testers to simulate various fault scenarios.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Allows testers to simulate various fault scenarios.
generated from faultsettings.xml
**/
public class FaultSettings extends UAVDataObject {
public FaultSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ActivateFaultElemNames = new ArrayList<String>();
ActivateFaultElemNames.add("0");
List<String> ActivateFaultEnumOptions = new ArrayList<String>();
ActivateFaultEnumOptions.add("NoFault");
ActivateFaultEnumOptions.add("ModuleInitAssert");
ActivateFaultEnumOptions.add("InitOutOfMemory");
ActivateFaultEnumOptions.add("InitBusError");
ActivateFaultEnumOptions.add("RunawayTask");
ActivateFaultEnumOptions.add("TaskOutOfMemory");
fields.add( new UAVObjectField("ActivateFault", "fault", UAVObjectField.FieldType.ENUM, ActivateFaultElemNames, ActivateFaultEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("ActivateFault").setValue("NoFault");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FaultSettings obj = new FaultSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FaultSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (FaultSettings)(objMngr.getObject(FaultSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x2778BA3Cl;
protected static final String NAME = "FaultSettings";
protected static String DESCRIPTION = "Allows testers to simulate various fault scenarios.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -104,6 +104,66 @@ public class FirmwareIAPObj extends UAVDataObject {
DescriptionElemNames.add("37");
DescriptionElemNames.add("38");
DescriptionElemNames.add("39");
DescriptionElemNames.add("40");
DescriptionElemNames.add("41");
DescriptionElemNames.add("42");
DescriptionElemNames.add("43");
DescriptionElemNames.add("44");
DescriptionElemNames.add("45");
DescriptionElemNames.add("46");
DescriptionElemNames.add("47");
DescriptionElemNames.add("48");
DescriptionElemNames.add("49");
DescriptionElemNames.add("50");
DescriptionElemNames.add("51");
DescriptionElemNames.add("52");
DescriptionElemNames.add("53");
DescriptionElemNames.add("54");
DescriptionElemNames.add("55");
DescriptionElemNames.add("56");
DescriptionElemNames.add("57");
DescriptionElemNames.add("58");
DescriptionElemNames.add("59");
DescriptionElemNames.add("60");
DescriptionElemNames.add("61");
DescriptionElemNames.add("62");
DescriptionElemNames.add("63");
DescriptionElemNames.add("64");
DescriptionElemNames.add("65");
DescriptionElemNames.add("66");
DescriptionElemNames.add("67");
DescriptionElemNames.add("68");
DescriptionElemNames.add("69");
DescriptionElemNames.add("70");
DescriptionElemNames.add("71");
DescriptionElemNames.add("72");
DescriptionElemNames.add("73");
DescriptionElemNames.add("74");
DescriptionElemNames.add("75");
DescriptionElemNames.add("76");
DescriptionElemNames.add("77");
DescriptionElemNames.add("78");
DescriptionElemNames.add("79");
DescriptionElemNames.add("80");
DescriptionElemNames.add("81");
DescriptionElemNames.add("82");
DescriptionElemNames.add("83");
DescriptionElemNames.add("84");
DescriptionElemNames.add("85");
DescriptionElemNames.add("86");
DescriptionElemNames.add("87");
DescriptionElemNames.add("88");
DescriptionElemNames.add("89");
DescriptionElemNames.add("90");
DescriptionElemNames.add("91");
DescriptionElemNames.add("92");
DescriptionElemNames.add("93");
DescriptionElemNames.add("94");
DescriptionElemNames.add("95");
DescriptionElemNames.add("96");
DescriptionElemNames.add("97");
DescriptionElemNames.add("98");
DescriptionElemNames.add("99");
fields.add( new UAVObjectField("Description", "", UAVObjectField.FieldType.UINT8, DescriptionElemNames, null) );
List<String> CPUSerialElemNames = new ArrayList<String>();
@ -201,7 +261,7 @@ public class FirmwareIAPObj extends UAVDataObject {
}
// Constants
protected static final long OBJID = 0x3CCDFB68l;
protected static final long OBJID = 0x5E6E8FDCl;
protected static final String NAME = "FirmwareIAPObj";
protected static String DESCRIPTION = "Queries board for SN, model, revision, and sends reset command";
protected static final boolean ISSINGLEINST = 1 > 0;

View File

@ -1,239 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref FixedWingPathFollowerModule
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref FixedWingPathFollowerModule
generated from fixedwingpathfollowersettings.xml
**/
public class FixedWingPathFollowerSettings extends UAVDataObject {
public FixedWingPathFollowerSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> AirSpeedMaxElemNames = new ArrayList<String>();
AirSpeedMaxElemNames.add("0");
fields.add( new UAVObjectField("AirSpeedMax", "m/s", UAVObjectField.FieldType.FLOAT32, AirSpeedMaxElemNames, null) );
List<String> AirSpeedMinElemNames = new ArrayList<String>();
AirSpeedMinElemNames.add("0");
fields.add( new UAVObjectField("AirSpeedMin", "m/s", UAVObjectField.FieldType.FLOAT32, AirSpeedMinElemNames, null) );
List<String> VerticalVelMaxElemNames = new ArrayList<String>();
VerticalVelMaxElemNames.add("0");
fields.add( new UAVObjectField("VerticalVelMax", "m/s", UAVObjectField.FieldType.FLOAT32, VerticalVelMaxElemNames, null) );
List<String> HorizontalPosPElemNames = new ArrayList<String>();
HorizontalPosPElemNames.add("0");
fields.add( new UAVObjectField("HorizontalPosP", "(m/s)/m", UAVObjectField.FieldType.FLOAT32, HorizontalPosPElemNames, null) );
List<String> VerticalPosPElemNames = new ArrayList<String>();
VerticalPosPElemNames.add("0");
fields.add( new UAVObjectField("VerticalPosP", "(m/s)/m", UAVObjectField.FieldType.FLOAT32, VerticalPosPElemNames, null) );
List<String> CoursePIElemNames = new ArrayList<String>();
CoursePIElemNames.add("Kp");
CoursePIElemNames.add("Ki");
CoursePIElemNames.add("ILimit");
fields.add( new UAVObjectField("CoursePI", "deg/deg", UAVObjectField.FieldType.FLOAT32, CoursePIElemNames, null) );
List<String> SpeedPElemNames = new ArrayList<String>();
SpeedPElemNames.add("Kp");
SpeedPElemNames.add("Max");
fields.add( new UAVObjectField("SpeedP", "(m/s^2) / ((m/s)/(m/s)", UAVObjectField.FieldType.FLOAT32, SpeedPElemNames, null) );
List<String> AccelPIElemNames = new ArrayList<String>();
AccelPIElemNames.add("Kp");
AccelPIElemNames.add("Ki");
AccelPIElemNames.add("ILimit");
fields.add( new UAVObjectField("AccelPI", "deg / (m/s^2)", UAVObjectField.FieldType.FLOAT32, AccelPIElemNames, null) );
List<String> VerticalToPitchCrossFeedElemNames = new ArrayList<String>();
VerticalToPitchCrossFeedElemNames.add("Kp");
VerticalToPitchCrossFeedElemNames.add("Max");
fields.add( new UAVObjectField("VerticalToPitchCrossFeed", "deg / ((m/s)/(m/s))", UAVObjectField.FieldType.FLOAT32, VerticalToPitchCrossFeedElemNames, null) );
List<String> AirspeedToVerticalCrossFeedElemNames = new ArrayList<String>();
AirspeedToVerticalCrossFeedElemNames.add("Kp");
AirspeedToVerticalCrossFeedElemNames.add("Max");
fields.add( new UAVObjectField("AirspeedToVerticalCrossFeed", "(m/s) / ((m/s)/(m/s))", UAVObjectField.FieldType.FLOAT32, AirspeedToVerticalCrossFeedElemNames, null) );
List<String> PowerPIElemNames = new ArrayList<String>();
PowerPIElemNames.add("Kp");
PowerPIElemNames.add("Ki");
PowerPIElemNames.add("ILimit");
fields.add( new UAVObjectField("PowerPI", "1/(m/s)", UAVObjectField.FieldType.FLOAT32, PowerPIElemNames, null) );
List<String> RollLimitElemNames = new ArrayList<String>();
RollLimitElemNames.add("Min");
RollLimitElemNames.add("Neutral");
RollLimitElemNames.add("Max");
fields.add( new UAVObjectField("RollLimit", "deg", UAVObjectField.FieldType.FLOAT32, RollLimitElemNames, null) );
List<String> PitchLimitElemNames = new ArrayList<String>();
PitchLimitElemNames.add("Min");
PitchLimitElemNames.add("Neutral");
PitchLimitElemNames.add("Max");
fields.add( new UAVObjectField("PitchLimit", "deg", UAVObjectField.FieldType.FLOAT32, PitchLimitElemNames, null) );
List<String> ThrottleLimitElemNames = new ArrayList<String>();
ThrottleLimitElemNames.add("Min");
ThrottleLimitElemNames.add("Neutral");
ThrottleLimitElemNames.add("Max");
fields.add( new UAVObjectField("ThrottleLimit", "", UAVObjectField.FieldType.FLOAT32, ThrottleLimitElemNames, null) );
List<String> UpdatePeriodElemNames = new ArrayList<String>();
UpdatePeriodElemNames.add("0");
fields.add( new UAVObjectField("UpdatePeriod", "ms", UAVObjectField.FieldType.INT32, UpdatePeriodElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("AirSpeedMax").setValue(15);
getField("AirSpeedMin").setValue(10);
getField("VerticalVelMax").setValue(10);
getField("HorizontalPosP").setValue(0.05);
getField("VerticalPosP").setValue(0.05);
getField("CoursePI").setValue(0.2,0);
getField("CoursePI").setValue(0,1);
getField("CoursePI").setValue(0,2);
getField("SpeedP").setValue(10,0);
getField("SpeedP").setValue(10,1);
getField("AccelPI").setValue(1.5,0);
getField("AccelPI").setValue(1.5,1);
getField("AccelPI").setValue(20,2);
getField("VerticalToPitchCrossFeed").setValue(50,0);
getField("VerticalToPitchCrossFeed").setValue(5,1);
getField("AirspeedToVerticalCrossFeed").setValue(100,0);
getField("AirspeedToVerticalCrossFeed").setValue(100,1);
getField("PowerPI").setValue(0.01,0);
getField("PowerPI").setValue(0.01,1);
getField("PowerPI").setValue(0.8,2);
getField("RollLimit").setValue(-35,0);
getField("RollLimit").setValue(0,1);
getField("RollLimit").setValue(35,2);
getField("PitchLimit").setValue(-10,0);
getField("PitchLimit").setValue(5,1);
getField("PitchLimit").setValue(20,2);
getField("ThrottleLimit").setValue(0.1,0);
getField("ThrottleLimit").setValue(0.5,1);
getField("ThrottleLimit").setValue(0.9,2);
getField("UpdatePeriod").setValue(100);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FixedWingPathFollowerSettings obj = new FixedWingPathFollowerSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FixedWingPathFollowerSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (FixedWingPathFollowerSettings)(objMngr.getObject(FixedWingPathFollowerSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x8A3F1E02l;
protected static final String NAME = "FixedWingPathFollowerSettings";
protected static String DESCRIPTION = "Settings for the @ref FixedWingPathFollowerModule";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,164 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Object Storing Debugging Information on PID internals
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Object Storing Debugging Information on PID internals
generated from fixedwingpathfollowerstatus.xml
**/
public class FixedWingPathFollowerStatus extends UAVDataObject {
public FixedWingPathFollowerStatus() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> EElemNames = new ArrayList<String>();
EElemNames.add("Course");
EElemNames.add("Speed");
EElemNames.add("Accel");
EElemNames.add("Power");
fields.add( new UAVObjectField("E", "", UAVObjectField.FieldType.FLOAT32, EElemNames, null) );
List<String> AElemNames = new ArrayList<String>();
AElemNames.add("Course");
AElemNames.add("Speed");
AElemNames.add("Accel");
AElemNames.add("Power");
fields.add( new UAVObjectField("A", "", UAVObjectField.FieldType.FLOAT32, AElemNames, null) );
List<String> CElemNames = new ArrayList<String>();
CElemNames.add("Course");
CElemNames.add("Speed");
CElemNames.add("Accel");
CElemNames.add("Power");
fields.add( new UAVObjectField("C", "", UAVObjectField.FieldType.FLOAT32, CElemNames, null) );
List<String> ErrorsElemNames = new ArrayList<String>();
ErrorsElemNames.add("Wind");
ErrorsElemNames.add("Lowspeed");
ErrorsElemNames.add("Highspeed");
ErrorsElemNames.add("Lowpower");
ErrorsElemNames.add("Highpower");
ErrorsElemNames.add("Pitchcontrol");
fields.add( new UAVObjectField("Errors", "", UAVObjectField.FieldType.UINT8, ErrorsElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 500;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FixedWingPathFollowerStatus obj = new FixedWingPathFollowerStatus();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FixedWingPathFollowerStatus GetInstance(UAVObjectManager objMngr, long instID)
{
return (FixedWingPathFollowerStatus)(objMngr.getObject(FixedWingPathFollowerStatus.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xA0D6F6D4l;
protected static final String NAME = "FixedWingPathFollowerStatus";
protected static String DESCRIPTION = "Object Storing Debugging Information on PID internals";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,176 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Flight Battery configuration.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Flight Battery configuration.
generated from flightbatterysettings.xml
**/
public class FlightBatterySettings extends UAVDataObject {
public FlightBatterySettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> CapacityElemNames = new ArrayList<String>();
CapacityElemNames.add("0");
fields.add( new UAVObjectField("Capacity", "mAh", UAVObjectField.FieldType.UINT32, CapacityElemNames, null) );
List<String> VoltageThresholdsElemNames = new ArrayList<String>();
VoltageThresholdsElemNames.add("Warning");
VoltageThresholdsElemNames.add("Alarm");
fields.add( new UAVObjectField("VoltageThresholds", "V", UAVObjectField.FieldType.FLOAT32, VoltageThresholdsElemNames, null) );
List<String> SensorCalibrationsElemNames = new ArrayList<String>();
SensorCalibrationsElemNames.add("VoltageFactor");
SensorCalibrationsElemNames.add("CurrentFactor");
fields.add( new UAVObjectField("SensorCalibrations", "", UAVObjectField.FieldType.FLOAT32, SensorCalibrationsElemNames, null) );
List<String> TypeElemNames = new ArrayList<String>();
TypeElemNames.add("0");
List<String> TypeEnumOptions = new ArrayList<String>();
TypeEnumOptions.add("LiPo");
TypeEnumOptions.add("A123");
TypeEnumOptions.add("LiCo");
TypeEnumOptions.add("LiFeSO4");
TypeEnumOptions.add("None");
fields.add( new UAVObjectField("Type", "", UAVObjectField.FieldType.ENUM, TypeElemNames, TypeEnumOptions) );
List<String> NbCellsElemNames = new ArrayList<String>();
NbCellsElemNames.add("0");
fields.add( new UAVObjectField("NbCells", "", UAVObjectField.FieldType.UINT8, NbCellsElemNames, null) );
List<String> SensorTypeElemNames = new ArrayList<String>();
SensorTypeElemNames.add("0");
List<String> SensorTypeEnumOptions = new ArrayList<String>();
SensorTypeEnumOptions.add("None");
fields.add( new UAVObjectField("SensorType", "", UAVObjectField.FieldType.ENUM, SensorTypeElemNames, SensorTypeEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Capacity").setValue(2200);
getField("VoltageThresholds").setValue(9.8,0);
getField("VoltageThresholds").setValue(9.2,1);
getField("SensorCalibrations").setValue(1,0);
getField("SensorCalibrations").setValue(1,1);
getField("Type").setValue("LiPo");
getField("NbCells").setValue(3);
getField("SensorType").setValue("None");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FlightBatterySettings obj = new FlightBatterySettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FlightBatterySettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (FlightBatterySettings)(objMngr.getObject(FlightBatterySettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xF172BB18l;
protected static final String NAME = "FlightBatterySettings";
protected static String DESCRIPTION = "Flight Battery configuration.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,164 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Battery status information.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Battery status information.
generated from flightbatterystate.xml
**/
public class FlightBatteryState extends UAVDataObject {
public FlightBatteryState() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> VoltageElemNames = new ArrayList<String>();
VoltageElemNames.add("0");
fields.add( new UAVObjectField("Voltage", "V", UAVObjectField.FieldType.FLOAT32, VoltageElemNames, null) );
List<String> CurrentElemNames = new ArrayList<String>();
CurrentElemNames.add("0");
fields.add( new UAVObjectField("Current", "A", UAVObjectField.FieldType.FLOAT32, CurrentElemNames, null) );
List<String> PeakCurrentElemNames = new ArrayList<String>();
PeakCurrentElemNames.add("0");
fields.add( new UAVObjectField("PeakCurrent", "A", UAVObjectField.FieldType.FLOAT32, PeakCurrentElemNames, null) );
List<String> AvgCurrentElemNames = new ArrayList<String>();
AvgCurrentElemNames.add("0");
fields.add( new UAVObjectField("AvgCurrent", "A", UAVObjectField.FieldType.FLOAT32, AvgCurrentElemNames, null) );
List<String> ConsumedEnergyElemNames = new ArrayList<String>();
ConsumedEnergyElemNames.add("0");
fields.add( new UAVObjectField("ConsumedEnergy", "mAh", UAVObjectField.FieldType.FLOAT32, ConsumedEnergyElemNames, null) );
List<String> EstimatedFlightTimeElemNames = new ArrayList<String>();
EstimatedFlightTimeElemNames.add("0");
fields.add( new UAVObjectField("EstimatedFlightTime", "sec", UAVObjectField.FieldType.FLOAT32, EstimatedFlightTimeElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READONLY) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Voltage").setValue(0);
getField("Current").setValue(0);
getField("PeakCurrent").setValue(0);
getField("AvgCurrent").setValue(0);
getField("ConsumedEnergy").setValue(0);
getField("EstimatedFlightTime").setValue(0);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FlightBatteryState obj = new FlightBatteryState();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FlightBatteryState GetInstance(UAVObjectManager objMngr, long instID)
{
return (FlightBatteryState)(objMngr.getObject(FlightBatteryState.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x8C0D756l;
protected static final String NAME = "FlightBatteryState";
protected static String DESCRIPTION = "Battery status information.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,143 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Control the flight plan script
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Control the flight plan script
generated from flightplancontrol.xml
**/
public class FlightPlanControl extends UAVDataObject {
public FlightPlanControl() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> CommandElemNames = new ArrayList<String>();
CommandElemNames.add("0");
List<String> CommandEnumOptions = new ArrayList<String>();
CommandEnumOptions.add("Start");
CommandEnumOptions.add("Stop");
CommandEnumOptions.add("Kill");
fields.add( new UAVObjectField("Command", "", UAVObjectField.FieldType.ENUM, CommandElemNames, CommandEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Command").setValue("Start");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FlightPlanControl obj = new FlightPlanControl();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FlightPlanControl GetInstance(UAVObjectManager objMngr, long instID)
{
return (FlightPlanControl)(objMngr.getObject(FlightPlanControl.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x53E3F180l;
protected static final String NAME = "FlightPlanControl";
protected static String DESCRIPTION = "Control the flight plan script";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,139 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the flight plan module, control the execution of the script
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the flight plan module, control the execution of the script
generated from flightplansettings.xml
**/
public class FlightPlanSettings extends UAVDataObject {
public FlightPlanSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> TestElemNames = new ArrayList<String>();
TestElemNames.add("0");
fields.add( new UAVObjectField("Test", "", UAVObjectField.FieldType.FLOAT32, TestElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Test").setValue(0);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FlightPlanSettings obj = new FlightPlanSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FlightPlanSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (FlightPlanSettings)(objMngr.getObject(FlightPlanSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x92E9FF76l;
protected static final String NAME = "FlightPlanSettings";
protected static String DESCRIPTION = "Settings for the flight plan module, control the execution of the script";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,183 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Status of the flight plan script
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Status of the flight plan script
generated from flightplanstatus.xml
**/
public class FlightPlanStatus extends UAVDataObject {
public FlightPlanStatus() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ErrorFileIDElemNames = new ArrayList<String>();
ErrorFileIDElemNames.add("0");
fields.add( new UAVObjectField("ErrorFileID", "", UAVObjectField.FieldType.UINT32, ErrorFileIDElemNames, null) );
List<String> ErrorLineNumElemNames = new ArrayList<String>();
ErrorLineNumElemNames.add("0");
fields.add( new UAVObjectField("ErrorLineNum", "", UAVObjectField.FieldType.UINT32, ErrorLineNumElemNames, null) );
List<String> DebugElemNames = new ArrayList<String>();
DebugElemNames.add("0");
DebugElemNames.add("1");
fields.add( new UAVObjectField("Debug", "", UAVObjectField.FieldType.FLOAT32, DebugElemNames, null) );
List<String> StatusElemNames = new ArrayList<String>();
StatusElemNames.add("0");
List<String> StatusEnumOptions = new ArrayList<String>();
StatusEnumOptions.add("Stopped");
StatusEnumOptions.add("Running");
StatusEnumOptions.add("Error");
fields.add( new UAVObjectField("Status", "", UAVObjectField.FieldType.ENUM, StatusElemNames, StatusEnumOptions) );
List<String> ErrorTypeElemNames = new ArrayList<String>();
ErrorTypeElemNames.add("0");
List<String> ErrorTypeEnumOptions = new ArrayList<String>();
ErrorTypeEnumOptions.add("None");
ErrorTypeEnumOptions.add("VMInitError");
ErrorTypeEnumOptions.add("Exception");
ErrorTypeEnumOptions.add("IOError");
ErrorTypeEnumOptions.add("DivByZero");
ErrorTypeEnumOptions.add("AssertError");
ErrorTypeEnumOptions.add("AttributeError");
ErrorTypeEnumOptions.add("ImportError");
ErrorTypeEnumOptions.add("IndexError");
ErrorTypeEnumOptions.add("KeyError");
ErrorTypeEnumOptions.add("MemoryError");
ErrorTypeEnumOptions.add("NameError");
ErrorTypeEnumOptions.add("SyntaxError");
ErrorTypeEnumOptions.add("SystemError");
ErrorTypeEnumOptions.add("TypeError");
ErrorTypeEnumOptions.add("ValueError");
ErrorTypeEnumOptions.add("StopIteration");
ErrorTypeEnumOptions.add("Warning");
ErrorTypeEnumOptions.add("UnknownError");
fields.add( new UAVObjectField("ErrorType", "", UAVObjectField.FieldType.ENUM, ErrorTypeElemNames, ErrorTypeEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 2000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Debug").setValue(0,0);
getField("Debug").setValue(0,1);
getField("Status").setValue("Stopped");
getField("ErrorType").setValue("None");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FlightPlanStatus obj = new FlightPlanStatus();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FlightPlanStatus GetInstance(UAVObjectManager objMngr, long instID)
{
return (FlightPlanStatus)(objMngr.getObject(FlightPlanStatus.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x2206EE46l;
protected static final String NAME = "FlightPlanStatus";
protected static String DESCRIPTION = "Status of the flight plan script";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,156 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Contains major flight status information for other modules.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Contains major flight status information for other modules.
generated from flightstatus.xml
**/
public class FlightStatus extends UAVDataObject {
public FlightStatus() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ArmedElemNames = new ArrayList<String>();
ArmedElemNames.add("0");
List<String> ArmedEnumOptions = new ArrayList<String>();
ArmedEnumOptions.add("Disarmed");
ArmedEnumOptions.add("Arming");
ArmedEnumOptions.add("Armed");
fields.add( new UAVObjectField("Armed", "", UAVObjectField.FieldType.ENUM, ArmedElemNames, ArmedEnumOptions) );
List<String> FlightModeElemNames = new ArrayList<String>();
FlightModeElemNames.add("0");
List<String> FlightModeEnumOptions = new ArrayList<String>();
FlightModeEnumOptions.add("Manual");
FlightModeEnumOptions.add("Stabilized1");
FlightModeEnumOptions.add("Stabilized2");
FlightModeEnumOptions.add("Stabilized3");
FlightModeEnumOptions.add("Autotune");
FlightModeEnumOptions.add("AltitudeHold");
FlightModeEnumOptions.add("VelocityControl");
FlightModeEnumOptions.add("PositionHold");
fields.add( new UAVObjectField("FlightMode", "", UAVObjectField.FieldType.ENUM, FlightModeElemNames, FlightModeEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 5000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Armed").setValue("Disarmed");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
FlightStatus obj = new FlightStatus();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public FlightStatus GetInstance(UAVObjectManager objMngr, long instID)
{
return (FlightStatus)(objMngr.getObject(FlightStatus.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x9B6A127El;
protected static final String NAME = "FlightStatus";
protected static String DESCRIPTION = "Contains major flight status information for other modules.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,145 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* A receiver channel group carried over the telemetry link.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
A receiver channel group carried over the telemetry link.
generated from gcsreceiver.xml
**/
public class GCSReceiver extends UAVDataObject {
public GCSReceiver() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ChannelElemNames = new ArrayList<String>();
ChannelElemNames.add("0");
ChannelElemNames.add("1");
ChannelElemNames.add("2");
ChannelElemNames.add("3");
ChannelElemNames.add("4");
ChannelElemNames.add("5");
ChannelElemNames.add("6");
ChannelElemNames.add("7");
fields.add( new UAVObjectField("Channel", "us", UAVObjectField.FieldType.UINT16, ChannelElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
GCSReceiver obj = new GCSReceiver();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public GCSReceiver GetInstance(UAVObjectManager objMngr, long instID)
{
return (GCSReceiver)(objMngr.getObject(GCSReceiver.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xCC7E1470l;
protected static final String NAME = "GCSReceiver";
protected static String DESCRIPTION = "A receiver channel group carried over the telemetry link.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,183 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Raw GPS data from @ref GPSModule. Should only be used by @ref AHRSCommsModule.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Raw GPS data from @ref GPSModule. Should only be used by @ref AHRSCommsModule.
generated from gpsposition.xml
**/
public class GPSPosition extends UAVDataObject {
public GPSPosition() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> LatitudeElemNames = new ArrayList<String>();
LatitudeElemNames.add("0");
fields.add( new UAVObjectField("Latitude", "degrees x 10^-7", UAVObjectField.FieldType.INT32, LatitudeElemNames, null) );
List<String> LongitudeElemNames = new ArrayList<String>();
LongitudeElemNames.add("0");
fields.add( new UAVObjectField("Longitude", "degrees x 10^-7", UAVObjectField.FieldType.INT32, LongitudeElemNames, null) );
List<String> AltitudeElemNames = new ArrayList<String>();
AltitudeElemNames.add("0");
fields.add( new UAVObjectField("Altitude", "meters", UAVObjectField.FieldType.FLOAT32, AltitudeElemNames, null) );
List<String> GeoidSeparationElemNames = new ArrayList<String>();
GeoidSeparationElemNames.add("0");
fields.add( new UAVObjectField("GeoidSeparation", "meters", UAVObjectField.FieldType.FLOAT32, GeoidSeparationElemNames, null) );
List<String> HeadingElemNames = new ArrayList<String>();
HeadingElemNames.add("0");
fields.add( new UAVObjectField("Heading", "degrees", UAVObjectField.FieldType.FLOAT32, HeadingElemNames, null) );
List<String> GroundspeedElemNames = new ArrayList<String>();
GroundspeedElemNames.add("0");
fields.add( new UAVObjectField("Groundspeed", "m/s", UAVObjectField.FieldType.FLOAT32, GroundspeedElemNames, null) );
List<String> PDOPElemNames = new ArrayList<String>();
PDOPElemNames.add("0");
fields.add( new UAVObjectField("PDOP", "", UAVObjectField.FieldType.FLOAT32, PDOPElemNames, null) );
List<String> HDOPElemNames = new ArrayList<String>();
HDOPElemNames.add("0");
fields.add( new UAVObjectField("HDOP", "", UAVObjectField.FieldType.FLOAT32, HDOPElemNames, null) );
List<String> VDOPElemNames = new ArrayList<String>();
VDOPElemNames.add("0");
fields.add( new UAVObjectField("VDOP", "", UAVObjectField.FieldType.FLOAT32, VDOPElemNames, null) );
List<String> StatusElemNames = new ArrayList<String>();
StatusElemNames.add("0");
List<String> StatusEnumOptions = new ArrayList<String>();
StatusEnumOptions.add("NoGPS");
StatusEnumOptions.add("NoFix");
StatusEnumOptions.add("Fix2D");
StatusEnumOptions.add("Fix3D");
fields.add( new UAVObjectField("Status", "", UAVObjectField.FieldType.ENUM, StatusElemNames, StatusEnumOptions) );
List<String> SatellitesElemNames = new ArrayList<String>();
SatellitesElemNames.add("0");
fields.add( new UAVObjectField("Satellites", "", UAVObjectField.FieldType.INT8, SatellitesElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
GPSPosition obj = new GPSPosition();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public GPSPosition GetInstance(UAVObjectManager objMngr, long instID)
{
return (GPSPosition)(objMngr.getObject(GPSPosition.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xE2A323B6l;
protected static final String NAME = "GPSPosition";
protected static String DESCRIPTION = "Raw GPS data from @ref GPSModule. Should only be used by @ref AHRSCommsModule.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,214 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Contains information about the GPS satellites in view from @ref GPSModule.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Contains information about the GPS satellites in view from @ref GPSModule.
generated from gpssatellites.xml
**/
public class GPSSatellites extends UAVDataObject {
public GPSSatellites() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ElevationElemNames = new ArrayList<String>();
ElevationElemNames.add("0");
ElevationElemNames.add("1");
ElevationElemNames.add("2");
ElevationElemNames.add("3");
ElevationElemNames.add("4");
ElevationElemNames.add("5");
ElevationElemNames.add("6");
ElevationElemNames.add("7");
ElevationElemNames.add("8");
ElevationElemNames.add("9");
ElevationElemNames.add("10");
ElevationElemNames.add("11");
ElevationElemNames.add("12");
ElevationElemNames.add("13");
ElevationElemNames.add("14");
ElevationElemNames.add("15");
fields.add( new UAVObjectField("Elevation", "degrees", UAVObjectField.FieldType.FLOAT32, ElevationElemNames, null) );
List<String> AzimuthElemNames = new ArrayList<String>();
AzimuthElemNames.add("0");
AzimuthElemNames.add("1");
AzimuthElemNames.add("2");
AzimuthElemNames.add("3");
AzimuthElemNames.add("4");
AzimuthElemNames.add("5");
AzimuthElemNames.add("6");
AzimuthElemNames.add("7");
AzimuthElemNames.add("8");
AzimuthElemNames.add("9");
AzimuthElemNames.add("10");
AzimuthElemNames.add("11");
AzimuthElemNames.add("12");
AzimuthElemNames.add("13");
AzimuthElemNames.add("14");
AzimuthElemNames.add("15");
fields.add( new UAVObjectField("Azimuth", "degrees", UAVObjectField.FieldType.FLOAT32, AzimuthElemNames, null) );
List<String> SatsInViewElemNames = new ArrayList<String>();
SatsInViewElemNames.add("0");
fields.add( new UAVObjectField("SatsInView", "", UAVObjectField.FieldType.INT8, SatsInViewElemNames, null) );
List<String> PRNElemNames = new ArrayList<String>();
PRNElemNames.add("0");
PRNElemNames.add("1");
PRNElemNames.add("2");
PRNElemNames.add("3");
PRNElemNames.add("4");
PRNElemNames.add("5");
PRNElemNames.add("6");
PRNElemNames.add("7");
PRNElemNames.add("8");
PRNElemNames.add("9");
PRNElemNames.add("10");
PRNElemNames.add("11");
PRNElemNames.add("12");
PRNElemNames.add("13");
PRNElemNames.add("14");
PRNElemNames.add("15");
fields.add( new UAVObjectField("PRN", "", UAVObjectField.FieldType.INT8, PRNElemNames, null) );
List<String> SNRElemNames = new ArrayList<String>();
SNRElemNames.add("0");
SNRElemNames.add("1");
SNRElemNames.add("2");
SNRElemNames.add("3");
SNRElemNames.add("4");
SNRElemNames.add("5");
SNRElemNames.add("6");
SNRElemNames.add("7");
SNRElemNames.add("8");
SNRElemNames.add("9");
SNRElemNames.add("10");
SNRElemNames.add("11");
SNRElemNames.add("12");
SNRElemNames.add("13");
SNRElemNames.add("14");
SNRElemNames.add("15");
fields.add( new UAVObjectField("SNR", "", UAVObjectField.FieldType.INT8, SNRElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 10000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 30000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
GPSSatellites obj = new GPSSatellites();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public GPSSatellites GetInstance(UAVObjectManager objMngr, long instID)
{
return (GPSSatellites)(objMngr.getObject(GPSSatellites.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x920D998l;
protected static final String NAME = "GPSSatellites";
protected static String DESCRIPTION = "Contains information about the GPS satellites in view from @ref GPSModule.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,142 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the GPS
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the GPS
generated from gpssettings.xml
**/
public class GPSSettings extends UAVDataObject {
public GPSSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> DataProtocolElemNames = new ArrayList<String>();
DataProtocolElemNames.add("0");
List<String> DataProtocolEnumOptions = new ArrayList<String>();
DataProtocolEnumOptions.add("NMEA");
DataProtocolEnumOptions.add("UBX");
fields.add( new UAVObjectField("DataProtocol", "", UAVObjectField.FieldType.ENUM, DataProtocolElemNames, DataProtocolEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("DataProtocol").setValue("UBX");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
GPSSettings obj = new GPSSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public GPSSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (GPSSettings)(objMngr.getObject(GPSSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xAC5F6370l;
protected static final String NAME = "GPSSettings";
protected static String DESCRIPTION = "Settings for the GPS";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,158 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Contains the GPS time from @ref GPSModule. Required to compute the world magnetic model correctly when setting the home location.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Contains the GPS time from @ref GPSModule. Required to compute the world magnetic model correctly when setting the home location.
generated from gpstime.xml
**/
public class GPSTime extends UAVDataObject {
public GPSTime() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> YearElemNames = new ArrayList<String>();
YearElemNames.add("0");
fields.add( new UAVObjectField("Year", "", UAVObjectField.FieldType.INT16, YearElemNames, null) );
List<String> MonthElemNames = new ArrayList<String>();
MonthElemNames.add("0");
fields.add( new UAVObjectField("Month", "", UAVObjectField.FieldType.INT8, MonthElemNames, null) );
List<String> DayElemNames = new ArrayList<String>();
DayElemNames.add("0");
fields.add( new UAVObjectField("Day", "", UAVObjectField.FieldType.INT8, DayElemNames, null) );
List<String> HourElemNames = new ArrayList<String>();
HourElemNames.add("0");
fields.add( new UAVObjectField("Hour", "", UAVObjectField.FieldType.INT8, HourElemNames, null) );
List<String> MinuteElemNames = new ArrayList<String>();
MinuteElemNames.add("0");
fields.add( new UAVObjectField("Minute", "", UAVObjectField.FieldType.INT8, MinuteElemNames, null) );
List<String> SecondElemNames = new ArrayList<String>();
SecondElemNames.add("0");
fields.add( new UAVObjectField("Second", "", UAVObjectField.FieldType.INT8, SecondElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 10000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 30000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
GPSTime obj = new GPSTime();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public GPSTime GetInstance(UAVObjectManager objMngr, long instID)
{
return (GPSTime)(objMngr.getObject(GPSTime.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xD4478084l;
protected static final String NAME = "GPSTime";
protected static String DESCRIPTION = "Contains the GPS time from @ref GPSModule. Required to compute the world magnetic model correctly when setting the home location.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Raw GPS data from @ref GPSModule.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Raw GPS data from @ref GPSModule.
generated from gpsvelocity.xml
**/
public class GPSVelocity extends UAVDataObject {
public GPSVelocity() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> NorthElemNames = new ArrayList<String>();
NorthElemNames.add("0");
fields.add( new UAVObjectField("North", "m/s", UAVObjectField.FieldType.FLOAT32, NorthElemNames, null) );
List<String> EastElemNames = new ArrayList<String>();
EastElemNames.add("0");
fields.add( new UAVObjectField("East", "m/s", UAVObjectField.FieldType.FLOAT32, EastElemNames, null) );
List<String> DownElemNames = new ArrayList<String>();
DownElemNames.add("0");
fields.add( new UAVObjectField("Down", "m/s", UAVObjectField.FieldType.FLOAT32, DownElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
GPSVelocity obj = new GPSVelocity();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public GPSVelocity GetInstance(UAVObjectManager objMngr, long instID)
{
return (GPSVelocity)(objMngr.getObject(GPSVelocity.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x8245DC80l;
protected static final String NAME = "GPSVelocity";
protected static String DESCRIPTION = "Raw GPS data from @ref GPSModule.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,210 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref GuidanceModule
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref GuidanceModule
generated from guidancesettings.xml
**/
public class GuidanceSettings extends UAVDataObject {
public GuidanceSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> HorizontalPosPIElemNames = new ArrayList<String>();
HorizontalPosPIElemNames.add("Kp");
HorizontalPosPIElemNames.add("Ki");
HorizontalPosPIElemNames.add("ILimit");
fields.add( new UAVObjectField("HorizontalPosPI", "(m/s)/m", UAVObjectField.FieldType.FLOAT32, HorizontalPosPIElemNames, null) );
List<String> HorizontalVelPIDElemNames = new ArrayList<String>();
HorizontalVelPIDElemNames.add("Kp");
HorizontalVelPIDElemNames.add("Ki");
HorizontalVelPIDElemNames.add("Kd");
HorizontalVelPIDElemNames.add("ILimit");
fields.add( new UAVObjectField("HorizontalVelPID", "deg/(m/s)", UAVObjectField.FieldType.FLOAT32, HorizontalVelPIDElemNames, null) );
List<String> VerticalPosPIElemNames = new ArrayList<String>();
VerticalPosPIElemNames.add("Kp");
VerticalPosPIElemNames.add("Ki");
VerticalPosPIElemNames.add("ILimit");
fields.add( new UAVObjectField("VerticalPosPI", "", UAVObjectField.FieldType.FLOAT32, VerticalPosPIElemNames, null) );
List<String> VerticalVelPIDElemNames = new ArrayList<String>();
VerticalVelPIDElemNames.add("Kp");
VerticalVelPIDElemNames.add("Ki");
VerticalVelPIDElemNames.add("Kd");
VerticalVelPIDElemNames.add("ILimit");
fields.add( new UAVObjectField("VerticalVelPID", "", UAVObjectField.FieldType.FLOAT32, VerticalVelPIDElemNames, null) );
List<String> MaxRollPitchElemNames = new ArrayList<String>();
MaxRollPitchElemNames.add("0");
fields.add( new UAVObjectField("MaxRollPitch", "deg", UAVObjectField.FieldType.FLOAT32, MaxRollPitchElemNames, null) );
List<String> UpdatePeriodElemNames = new ArrayList<String>();
UpdatePeriodElemNames.add("0");
fields.add( new UAVObjectField("UpdatePeriod", "", UAVObjectField.FieldType.INT32, UpdatePeriodElemNames, null) );
List<String> HorizontalVelMaxElemNames = new ArrayList<String>();
HorizontalVelMaxElemNames.add("0");
fields.add( new UAVObjectField("HorizontalVelMax", "m/s", UAVObjectField.FieldType.UINT16, HorizontalVelMaxElemNames, null) );
List<String> VerticalVelMaxElemNames = new ArrayList<String>();
VerticalVelMaxElemNames.add("0");
fields.add( new UAVObjectField("VerticalVelMax", "m/s", UAVObjectField.FieldType.UINT16, VerticalVelMaxElemNames, null) );
List<String> GuidanceModeElemNames = new ArrayList<String>();
GuidanceModeElemNames.add("0");
List<String> GuidanceModeEnumOptions = new ArrayList<String>();
GuidanceModeEnumOptions.add("DUAL_LOOP");
GuidanceModeEnumOptions.add("VELOCITY_CONTROL");
fields.add( new UAVObjectField("GuidanceMode", "", UAVObjectField.FieldType.ENUM, GuidanceModeElemNames, GuidanceModeEnumOptions) );
List<String> ThrottleControlElemNames = new ArrayList<String>();
ThrottleControlElemNames.add("0");
List<String> ThrottleControlEnumOptions = new ArrayList<String>();
ThrottleControlEnumOptions.add("FALSE");
ThrottleControlEnumOptions.add("TRUE");
fields.add( new UAVObjectField("ThrottleControl", "", UAVObjectField.FieldType.ENUM, ThrottleControlElemNames, ThrottleControlEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("HorizontalPosPI").setValue(0.1,0);
getField("HorizontalPosPI").setValue(0.001,1);
getField("HorizontalPosPI").setValue(300,2);
getField("HorizontalVelPID").setValue(0.05,0);
getField("HorizontalVelPID").setValue(0.002,1);
getField("HorizontalVelPID").setValue(0,2);
getField("HorizontalVelPID").setValue(1000,3);
getField("VerticalPosPI").setValue(0.1,0);
getField("VerticalPosPI").setValue(0.001,1);
getField("VerticalPosPI").setValue(200,2);
getField("VerticalVelPID").setValue(0.1,0);
getField("VerticalVelPID").setValue(0,1);
getField("VerticalVelPID").setValue(0,2);
getField("VerticalVelPID").setValue(0,3);
getField("MaxRollPitch").setValue(10);
getField("UpdatePeriod").setValue(100);
getField("HorizontalVelMax").setValue(300);
getField("VerticalVelMax").setValue(150);
getField("GuidanceMode").setValue("DUAL_LOOP");
getField("ThrottleControl").setValue("FALSE");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
GuidanceSettings obj = new GuidanceSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public GuidanceSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (GuidanceSettings)(objMngr.getObject(GuidanceSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x6EA79FB4l;
protected static final String NAME = "GuidanceSettings";
protected static String DESCRIPTION = "Settings for the @ref GuidanceModule";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,150 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The gyro data.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The gyro data.
generated from gyros.xml
**/
public class Gyros extends UAVDataObject {
public Gyros() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> xElemNames = new ArrayList<String>();
xElemNames.add("0");
fields.add( new UAVObjectField("x", "deg/s", UAVObjectField.FieldType.FLOAT32, xElemNames, null) );
List<String> yElemNames = new ArrayList<String>();
yElemNames.add("0");
fields.add( new UAVObjectField("y", "deg/s", UAVObjectField.FieldType.FLOAT32, yElemNames, null) );
List<String> zElemNames = new ArrayList<String>();
zElemNames.add("0");
fields.add( new UAVObjectField("z", "deg/s", UAVObjectField.FieldType.FLOAT32, zElemNames, null) );
List<String> temperatureElemNames = new ArrayList<String>();
temperatureElemNames.add("0");
fields.add( new UAVObjectField("temperature", "deg C", UAVObjectField.FieldType.FLOAT32, temperatureElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
Gyros obj = new Gyros();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public Gyros GetInstance(UAVObjectManager objMngr, long instID)
{
return (Gyros)(objMngr.getObject(Gyros.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x4228AF6l;
protected static final String NAME = "Gyros";
protected static String DESCRIPTION = "The gyro data.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The gyro data.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The gyro data.
generated from gyrosbias.xml
**/
public class GyrosBias extends UAVDataObject {
public GyrosBias() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> xElemNames = new ArrayList<String>();
xElemNames.add("0");
fields.add( new UAVObjectField("x", "deg/s", UAVObjectField.FieldType.FLOAT32, xElemNames, null) );
List<String> yElemNames = new ArrayList<String>();
yElemNames.add("0");
fields.add( new UAVObjectField("y", "deg/s", UAVObjectField.FieldType.FLOAT32, yElemNames, null) );
List<String> zElemNames = new ArrayList<String>();
zElemNames.add("0");
fields.add( new UAVObjectField("z", "deg/s", UAVObjectField.FieldType.FLOAT32, zElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
GyrosBias obj = new GyrosBias();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public GyrosBias GetInstance(UAVObjectManager objMngr, long instID)
{
return (GyrosBias)(objMngr.getObject(GyrosBias.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xE4B6F980l;
protected static final String NAME = "GyrosBias";
protected static String DESCRIPTION = "The gyro data.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,201 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* HomeLocation setting which contains the constants to tranlate from longitutde and latitude to NED reference frame. Automatically set by @ref GPSModule after acquiring a 3D lock. Used by @ref AHRSCommsModule.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
HomeLocation setting which contains the constants to tranlate from longitutde and latitude to NED reference frame. Automatically set by @ref GPSModule after acquiring a 3D lock. Used by @ref AHRSCommsModule.
generated from homelocation.xml
**/
public class HomeLocation extends UAVDataObject {
public HomeLocation() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> LatitudeElemNames = new ArrayList<String>();
LatitudeElemNames.add("0");
fields.add( new UAVObjectField("Latitude", "deg * 10e6", UAVObjectField.FieldType.INT32, LatitudeElemNames, null) );
List<String> LongitudeElemNames = new ArrayList<String>();
LongitudeElemNames.add("0");
fields.add( new UAVObjectField("Longitude", "deg * 10e6", UAVObjectField.FieldType.INT32, LongitudeElemNames, null) );
List<String> AltitudeElemNames = new ArrayList<String>();
AltitudeElemNames.add("0");
fields.add( new UAVObjectField("Altitude", "m over geoid", UAVObjectField.FieldType.FLOAT32, AltitudeElemNames, null) );
List<String> ECEFElemNames = new ArrayList<String>();
ECEFElemNames.add("0");
ECEFElemNames.add("1");
ECEFElemNames.add("2");
fields.add( new UAVObjectField("ECEF", "cm", UAVObjectField.FieldType.INT32, ECEFElemNames, null) );
List<String> RNEElemNames = new ArrayList<String>();
RNEElemNames.add("0");
RNEElemNames.add("1");
RNEElemNames.add("2");
RNEElemNames.add("3");
RNEElemNames.add("4");
RNEElemNames.add("5");
RNEElemNames.add("6");
RNEElemNames.add("7");
RNEElemNames.add("8");
fields.add( new UAVObjectField("RNE", "", UAVObjectField.FieldType.FLOAT32, RNEElemNames, null) );
List<String> BeElemNames = new ArrayList<String>();
BeElemNames.add("0");
BeElemNames.add("1");
BeElemNames.add("2");
fields.add( new UAVObjectField("Be", "", UAVObjectField.FieldType.FLOAT32, BeElemNames, null) );
List<String> g_eElemNames = new ArrayList<String>();
g_eElemNames.add("0");
fields.add( new UAVObjectField("g_e", "m/s^2", UAVObjectField.FieldType.FLOAT32, g_eElemNames, null) );
List<String> SetElemNames = new ArrayList<String>();
SetElemNames.add("0");
List<String> SetEnumOptions = new ArrayList<String>();
SetEnumOptions.add("FALSE");
SetEnumOptions.add("TRUE");
fields.add( new UAVObjectField("Set", "", UAVObjectField.FieldType.ENUM, SetElemNames, SetEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Latitude").setValue(0);
getField("Longitude").setValue(0);
getField("Altitude").setValue(0);
getField("ECEF").setValue(0,0);
getField("ECEF").setValue(0,1);
getField("ECEF").setValue(0,2);
getField("RNE").setValue(0,0);
getField("RNE").setValue(0,1);
getField("RNE").setValue(0,2);
getField("RNE").setValue(0,3);
getField("RNE").setValue(0,4);
getField("RNE").setValue(0,5);
getField("RNE").setValue(0,6);
getField("RNE").setValue(0,7);
getField("RNE").setValue(0,8);
getField("Be").setValue(0,0);
getField("Be").setValue(0,1);
getField("Be").setValue(0,2);
getField("g_e").setValue(9.81);
getField("Set").setValue("FALSE");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
HomeLocation obj = new HomeLocation();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public HomeLocation GetInstance(UAVObjectManager objMngr, long instID)
{
return (HomeLocation)(objMngr.getObject(HomeLocation.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x5BB3AEFCl;
protected static final String NAME = "HomeLocation";
protected static String DESCRIPTION = "HomeLocation setting which contains the constants to tranlate from longitutde and latitude to NED reference frame. Automatically set by @ref GPSModule after acquiring a 3D lock. Used by @ref AHRSCommsModule.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,328 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Selection of optional hardware configurations.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Selection of optional hardware configurations.
generated from hwsettings.xml
**/
public class HwSettings extends UAVDataObject {
public HwSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> CC_RcvrPortElemNames = new ArrayList<String>();
CC_RcvrPortElemNames.add("0");
List<String> CC_RcvrPortEnumOptions = new ArrayList<String>();
CC_RcvrPortEnumOptions.add("Disabled");
CC_RcvrPortEnumOptions.add("PWM");
CC_RcvrPortEnumOptions.add("PPM");
CC_RcvrPortEnumOptions.add("PPM+Outputs");
CC_RcvrPortEnumOptions.add("Outputs");
fields.add( new UAVObjectField("CC_RcvrPort", "function", UAVObjectField.FieldType.ENUM, CC_RcvrPortElemNames, CC_RcvrPortEnumOptions) );
List<String> CC_MainPortElemNames = new ArrayList<String>();
CC_MainPortElemNames.add("0");
List<String> CC_MainPortEnumOptions = new ArrayList<String>();
CC_MainPortEnumOptions.add("Disabled");
CC_MainPortEnumOptions.add("Telemetry");
CC_MainPortEnumOptions.add("GPS");
CC_MainPortEnumOptions.add("S.Bus");
CC_MainPortEnumOptions.add("DSM2");
CC_MainPortEnumOptions.add("DSMX (10bit)");
CC_MainPortEnumOptions.add("DSMX (11bit)");
CC_MainPortEnumOptions.add("ComAux");
CC_MainPortEnumOptions.add("ComBridge");
fields.add( new UAVObjectField("CC_MainPort", "function", UAVObjectField.FieldType.ENUM, CC_MainPortElemNames, CC_MainPortEnumOptions) );
List<String> CC_FlexiPortElemNames = new ArrayList<String>();
CC_FlexiPortElemNames.add("0");
List<String> CC_FlexiPortEnumOptions = new ArrayList<String>();
CC_FlexiPortEnumOptions.add("Disabled");
CC_FlexiPortEnumOptions.add("Telemetry");
CC_FlexiPortEnumOptions.add("GPS");
CC_FlexiPortEnumOptions.add("I2C");
CC_FlexiPortEnumOptions.add("DSM2");
CC_FlexiPortEnumOptions.add("DSMX (10bit)");
CC_FlexiPortEnumOptions.add("DSMX (11bit)");
CC_FlexiPortEnumOptions.add("ComAux");
CC_FlexiPortEnumOptions.add("ComBridge");
fields.add( new UAVObjectField("CC_FlexiPort", "function", UAVObjectField.FieldType.ENUM, CC_FlexiPortElemNames, CC_FlexiPortEnumOptions) );
List<String> RV_RcvrPortElemNames = new ArrayList<String>();
RV_RcvrPortElemNames.add("0");
List<String> RV_RcvrPortEnumOptions = new ArrayList<String>();
RV_RcvrPortEnumOptions.add("Disabled");
RV_RcvrPortEnumOptions.add("PWM");
RV_RcvrPortEnumOptions.add("PPM");
RV_RcvrPortEnumOptions.add("PPM+Outputs");
RV_RcvrPortEnumOptions.add("Outputs");
fields.add( new UAVObjectField("RV_RcvrPort", "function", UAVObjectField.FieldType.ENUM, RV_RcvrPortElemNames, RV_RcvrPortEnumOptions) );
List<String> RV_AuxPortElemNames = new ArrayList<String>();
RV_AuxPortElemNames.add("0");
List<String> RV_AuxPortEnumOptions = new ArrayList<String>();
RV_AuxPortEnumOptions.add("Disabled");
RV_AuxPortEnumOptions.add("Telemetry");
RV_AuxPortEnumOptions.add("DSM2");
RV_AuxPortEnumOptions.add("DSMX (10bit)");
RV_AuxPortEnumOptions.add("DSMX (11bit)");
RV_AuxPortEnumOptions.add("ComAux");
RV_AuxPortEnumOptions.add("ComBridge");
fields.add( new UAVObjectField("RV_AuxPort", "function", UAVObjectField.FieldType.ENUM, RV_AuxPortElemNames, RV_AuxPortEnumOptions) );
List<String> RV_AuxSBusPortElemNames = new ArrayList<String>();
RV_AuxSBusPortElemNames.add("0");
List<String> RV_AuxSBusPortEnumOptions = new ArrayList<String>();
RV_AuxSBusPortEnumOptions.add("Disabled");
RV_AuxSBusPortEnumOptions.add("S.Bus");
RV_AuxSBusPortEnumOptions.add("DSM2");
RV_AuxSBusPortEnumOptions.add("DSMX (10bit)");
RV_AuxSBusPortEnumOptions.add("DSMX (11bit)");
RV_AuxSBusPortEnumOptions.add("ComAux");
RV_AuxSBusPortEnumOptions.add("ComBridge");
fields.add( new UAVObjectField("RV_AuxSBusPort", "function", UAVObjectField.FieldType.ENUM, RV_AuxSBusPortElemNames, RV_AuxSBusPortEnumOptions) );
List<String> RV_FlexiPortElemNames = new ArrayList<String>();
RV_FlexiPortElemNames.add("0");
List<String> RV_FlexiPortEnumOptions = new ArrayList<String>();
RV_FlexiPortEnumOptions.add("Disabled");
RV_FlexiPortEnumOptions.add("I2C");
RV_FlexiPortEnumOptions.add("DSM2");
RV_FlexiPortEnumOptions.add("DSMX (10bit)");
RV_FlexiPortEnumOptions.add("DSMX (11bit)");
RV_FlexiPortEnumOptions.add("ComAux");
RV_FlexiPortEnumOptions.add("ComBridge");
fields.add( new UAVObjectField("RV_FlexiPort", "function", UAVObjectField.FieldType.ENUM, RV_FlexiPortElemNames, RV_FlexiPortEnumOptions) );
List<String> RV_TelemetryPortElemNames = new ArrayList<String>();
RV_TelemetryPortElemNames.add("0");
List<String> RV_TelemetryPortEnumOptions = new ArrayList<String>();
RV_TelemetryPortEnumOptions.add("Disabled");
RV_TelemetryPortEnumOptions.add("Telemetry");
RV_TelemetryPortEnumOptions.add("ComAux");
RV_TelemetryPortEnumOptions.add("ComBridge");
fields.add( new UAVObjectField("RV_TelemetryPort", "function", UAVObjectField.FieldType.ENUM, RV_TelemetryPortElemNames, RV_TelemetryPortEnumOptions) );
List<String> RV_GPSPortElemNames = new ArrayList<String>();
RV_GPSPortElemNames.add("0");
List<String> RV_GPSPortEnumOptions = new ArrayList<String>();
RV_GPSPortEnumOptions.add("Disabled");
RV_GPSPortEnumOptions.add("Telemetry");
RV_GPSPortEnumOptions.add("GPS");
RV_GPSPortEnumOptions.add("ComAux");
RV_GPSPortEnumOptions.add("ComBridge");
fields.add( new UAVObjectField("RV_GPSPort", "function", UAVObjectField.FieldType.ENUM, RV_GPSPortElemNames, RV_GPSPortEnumOptions) );
List<String> TelemetrySpeedElemNames = new ArrayList<String>();
TelemetrySpeedElemNames.add("0");
List<String> TelemetrySpeedEnumOptions = new ArrayList<String>();
TelemetrySpeedEnumOptions.add("2400");
TelemetrySpeedEnumOptions.add("4800");
TelemetrySpeedEnumOptions.add("9600");
TelemetrySpeedEnumOptions.add("19200");
TelemetrySpeedEnumOptions.add("38400");
TelemetrySpeedEnumOptions.add("57600");
TelemetrySpeedEnumOptions.add("115200");
fields.add( new UAVObjectField("TelemetrySpeed", "bps", UAVObjectField.FieldType.ENUM, TelemetrySpeedElemNames, TelemetrySpeedEnumOptions) );
List<String> GPSSpeedElemNames = new ArrayList<String>();
GPSSpeedElemNames.add("0");
List<String> GPSSpeedEnumOptions = new ArrayList<String>();
GPSSpeedEnumOptions.add("2400");
GPSSpeedEnumOptions.add("4800");
GPSSpeedEnumOptions.add("9600");
GPSSpeedEnumOptions.add("19200");
GPSSpeedEnumOptions.add("38400");
GPSSpeedEnumOptions.add("57600");
GPSSpeedEnumOptions.add("115200");
fields.add( new UAVObjectField("GPSSpeed", "bps", UAVObjectField.FieldType.ENUM, GPSSpeedElemNames, GPSSpeedEnumOptions) );
List<String> ComUsbBridgeSpeedElemNames = new ArrayList<String>();
ComUsbBridgeSpeedElemNames.add("0");
List<String> ComUsbBridgeSpeedEnumOptions = new ArrayList<String>();
ComUsbBridgeSpeedEnumOptions.add("2400");
ComUsbBridgeSpeedEnumOptions.add("4800");
ComUsbBridgeSpeedEnumOptions.add("9600");
ComUsbBridgeSpeedEnumOptions.add("19200");
ComUsbBridgeSpeedEnumOptions.add("38400");
ComUsbBridgeSpeedEnumOptions.add("57600");
ComUsbBridgeSpeedEnumOptions.add("115200");
fields.add( new UAVObjectField("ComUsbBridgeSpeed", "bps", UAVObjectField.FieldType.ENUM, ComUsbBridgeSpeedElemNames, ComUsbBridgeSpeedEnumOptions) );
List<String> USB_HIDPortElemNames = new ArrayList<String>();
USB_HIDPortElemNames.add("0");
List<String> USB_HIDPortEnumOptions = new ArrayList<String>();
USB_HIDPortEnumOptions.add("USBTelemetry");
USB_HIDPortEnumOptions.add("RCTransmitter");
USB_HIDPortEnumOptions.add("Disabled");
fields.add( new UAVObjectField("USB_HIDPort", "function", UAVObjectField.FieldType.ENUM, USB_HIDPortElemNames, USB_HIDPortEnumOptions) );
List<String> USB_VCPPortElemNames = new ArrayList<String>();
USB_VCPPortElemNames.add("0");
List<String> USB_VCPPortEnumOptions = new ArrayList<String>();
USB_VCPPortEnumOptions.add("USBTelemetry");
USB_VCPPortEnumOptions.add("ComBridge");
USB_VCPPortEnumOptions.add("Disabled");
fields.add( new UAVObjectField("USB_VCPPort", "function", UAVObjectField.FieldType.ENUM, USB_VCPPortElemNames, USB_VCPPortEnumOptions) );
List<String> OptionalModulesElemNames = new ArrayList<String>();
OptionalModulesElemNames.add("CameraStab");
OptionalModulesElemNames.add("GPS");
OptionalModulesElemNames.add("ComUsbBridge");
OptionalModulesElemNames.add("Fault");
OptionalModulesElemNames.add("Altitude");
OptionalModulesElemNames.add("TxPID");
OptionalModulesElemNames.add("Autotune");
List<String> OptionalModulesEnumOptions = new ArrayList<String>();
OptionalModulesEnumOptions.add("Disabled");
OptionalModulesEnumOptions.add("Enabled");
fields.add( new UAVObjectField("OptionalModules", "", UAVObjectField.FieldType.ENUM, OptionalModulesElemNames, OptionalModulesEnumOptions) );
List<String> DSMxBindElemNames = new ArrayList<String>();
DSMxBindElemNames.add("0");
fields.add( new UAVObjectField("DSMxBind", "", UAVObjectField.FieldType.UINT8, DSMxBindElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("CC_RcvrPort").setValue("PWM");
getField("CC_MainPort").setValue("Telemetry");
getField("CC_FlexiPort").setValue("Disabled");
getField("RV_RcvrPort").setValue("PWM");
getField("RV_AuxPort").setValue("Disabled");
getField("RV_AuxSBusPort").setValue("Disabled");
getField("RV_FlexiPort").setValue("Disabled");
getField("RV_TelemetryPort").setValue("Telemetry");
getField("RV_GPSPort").setValue("GPS");
getField("TelemetrySpeed").setValue("57600");
getField("GPSSpeed").setValue("57600");
getField("ComUsbBridgeSpeed").setValue("57600");
getField("USB_HIDPort").setValue("USBTelemetry");
getField("USB_VCPPort").setValue("Disabled");
getField("OptionalModules").setValue("Disabled",0);
getField("OptionalModules").setValue("Disabled",1);
getField("OptionalModules").setValue("Disabled",2);
getField("OptionalModules").setValue("Disabled",3);
getField("OptionalModules").setValue("Disabled",4);
getField("OptionalModules").setValue("Disabled",5);
getField("OptionalModules").setValue("Disabled",6);
getField("DSMxBind").setValue(0);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
HwSettings obj = new HwSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public HwSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (HwSettings)(objMngr.getObject(HwSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x428D4DCEl;
protected static final String NAME = "HwSettings";
protected static String DESCRIPTION = "Selection of optional hardware configurations.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,237 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Tracks statistics on the I2C bus.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Tracks statistics on the I2C bus.
generated from i2cstats.xml
**/
public class I2CStats extends UAVDataObject {
public I2CStats() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> evirq_logElemNames = new ArrayList<String>();
evirq_logElemNames.add("0");
evirq_logElemNames.add("1");
evirq_logElemNames.add("2");
evirq_logElemNames.add("3");
evirq_logElemNames.add("4");
fields.add( new UAVObjectField("evirq_log", "", UAVObjectField.FieldType.UINT32, evirq_logElemNames, null) );
List<String> erirq_logElemNames = new ArrayList<String>();
erirq_logElemNames.add("0");
erirq_logElemNames.add("1");
erirq_logElemNames.add("2");
erirq_logElemNames.add("3");
erirq_logElemNames.add("4");
fields.add( new UAVObjectField("erirq_log", "", UAVObjectField.FieldType.UINT32, erirq_logElemNames, null) );
List<String> event_errorsElemNames = new ArrayList<String>();
event_errorsElemNames.add("0");
fields.add( new UAVObjectField("event_errors", "", UAVObjectField.FieldType.UINT8, event_errorsElemNames, null) );
List<String> fsm_errorsElemNames = new ArrayList<String>();
fsm_errorsElemNames.add("0");
fields.add( new UAVObjectField("fsm_errors", "", UAVObjectField.FieldType.UINT8, fsm_errorsElemNames, null) );
List<String> irq_errorsElemNames = new ArrayList<String>();
irq_errorsElemNames.add("0");
fields.add( new UAVObjectField("irq_errors", "", UAVObjectField.FieldType.UINT8, irq_errorsElemNames, null) );
List<String> nacksElemNames = new ArrayList<String>();
nacksElemNames.add("0");
fields.add( new UAVObjectField("nacks", "", UAVObjectField.FieldType.UINT8, nacksElemNames, null) );
List<String> timeoutsElemNames = new ArrayList<String>();
timeoutsElemNames.add("0");
fields.add( new UAVObjectField("timeouts", "", UAVObjectField.FieldType.UINT8, timeoutsElemNames, null) );
List<String> last_error_typeElemNames = new ArrayList<String>();
last_error_typeElemNames.add("0");
List<String> last_error_typeEnumOptions = new ArrayList<String>();
last_error_typeEnumOptions.add("EVENT");
last_error_typeEnumOptions.add("FSM");
last_error_typeEnumOptions.add("INTERRUPT");
fields.add( new UAVObjectField("last_error_type", "", UAVObjectField.FieldType.ENUM, last_error_typeElemNames, last_error_typeEnumOptions) );
List<String> event_logElemNames = new ArrayList<String>();
event_logElemNames.add("0");
event_logElemNames.add("1");
event_logElemNames.add("2");
event_logElemNames.add("3");
event_logElemNames.add("4");
List<String> event_logEnumOptions = new ArrayList<String>();
event_logEnumOptions.add("I2C_EVENT_BUS_ERROR");
event_logEnumOptions.add("I2C_EVENT_START");
event_logEnumOptions.add("I2C_EVENT_STARTED_MORE_TXN_READ");
event_logEnumOptions.add("I2C_EVENT_STARTED_MORE_TXN_WRITE");
event_logEnumOptions.add("I2C_EVENT_STARTED_LAST_TXN_READ");
event_logEnumOptions.add("I2C_EVENT_STARTED_LAST_TXN_WRITE");
event_logEnumOptions.add("I2C_EVENT_ADDR_SENT_LEN_EQ_0");
event_logEnumOptions.add("I2C_EVENT_ADDR_SENT_LEN_EQ_1");
event_logEnumOptions.add("I2C_EVENT_ADDR_SENT_LEN_EQ_2");
event_logEnumOptions.add("I2C_EVENT_ADDR_SENT_LEN_GT_2");
event_logEnumOptions.add("I2C_EVENT_TRANSFER_DONE_LEN_EQ_0");
event_logEnumOptions.add("I2C_EVENT_TRANSFER_DONE_LEN_EQ_1");
event_logEnumOptions.add("I2C_EVENT_TRANSFER_DONE_LEN_EQ_2");
event_logEnumOptions.add("I2C_EVENT_TRANSFER_DONE_LEN_GT_2");
event_logEnumOptions.add("I2C_EVENT_NACK");
event_logEnumOptions.add("I2C_EVENT_STOPPED");
event_logEnumOptions.add("I2C_EVENT_AUTO");
fields.add( new UAVObjectField("event_log", "", UAVObjectField.FieldType.ENUM, event_logElemNames, event_logEnumOptions) );
List<String> state_logElemNames = new ArrayList<String>();
state_logElemNames.add("0");
state_logElemNames.add("1");
state_logElemNames.add("2");
state_logElemNames.add("3");
state_logElemNames.add("4");
List<String> state_logEnumOptions = new ArrayList<String>();
state_logEnumOptions.add("I2C_STATE_FSM_FAULT");
state_logEnumOptions.add("I2C_STATE_BUS_ERROR");
state_logEnumOptions.add("I2C_STATE_STOPPED");
state_logEnumOptions.add("I2C_STATE_STOPPING");
state_logEnumOptions.add("I2C_STATE_STARTING");
state_logEnumOptions.add("I2C_STATE_R_MORE_TXN_ADDR");
state_logEnumOptions.add("I2C_STATE_R_MORE_TXN_PRE_ONE");
state_logEnumOptions.add("I2C_STATE_R_MORE_TXN_PRE_FIRST");
state_logEnumOptions.add("I2C_STATE_R_MORE_TXN_PRE_MIDDLE");
state_logEnumOptions.add("I2C_STATE_R_MORE_TXN_LAST");
state_logEnumOptions.add("I2C_STATE_R_MORE_TXN_POST_LAST");
state_logEnumOptions.add("R_LAST_TXN_ADDR");
state_logEnumOptions.add("I2C_STATE_R_LAST_TXN_PRE_ONE");
state_logEnumOptions.add("I2C_STATE_R_LAST_TXN_PRE_FIRST");
state_logEnumOptions.add("I2C_STATE_R_LAST_TXN_PRE_MIDDLE");
state_logEnumOptions.add("I2C_STATE_R_LAST_TXN_PRE_LAST");
state_logEnumOptions.add("I2C_STATE_R_LAST_TXN_POST_LAST");
state_logEnumOptions.add("I2C_STATE_W_MORE_TXN_ADDR");
state_logEnumOptions.add("I2C_STATE_W_MORE_TXN_MIDDLE");
state_logEnumOptions.add("I2C_STATE_W_MORE_TXN_LAST");
state_logEnumOptions.add("I2C_STATE_W_LAST_TXN_ADDR");
state_logEnumOptions.add("I2C_STATE_W_LAST_TXN_MIDDLE");
state_logEnumOptions.add("I2C_STATE_W_LAST_TXN_LAST");
state_logEnumOptions.add("I2C_STATE_NACK");
fields.add( new UAVObjectField("state_log", "", UAVObjectField.FieldType.ENUM, state_logElemNames, state_logEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 10000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 30000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
I2CStats obj = new I2CStats();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public I2CStats GetInstance(UAVObjectManager objMngr, long instID)
{
return (I2CStats)(objMngr.getObject(I2CStats.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xB714823El;
protected static final String NAME = "I2CStats";
protected static String DESCRIPTION = "Tracks statistics on the I2C bus.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The gyro data.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The gyro data.
generated from magbias.xml
**/
public class MagBias extends UAVDataObject {
public MagBias() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> xElemNames = new ArrayList<String>();
xElemNames.add("0");
fields.add( new UAVObjectField("x", "mGau", UAVObjectField.FieldType.FLOAT32, xElemNames, null) );
List<String> yElemNames = new ArrayList<String>();
yElemNames.add("0");
fields.add( new UAVObjectField("y", "mGau", UAVObjectField.FieldType.FLOAT32, yElemNames, null) );
List<String> zElemNames = new ArrayList<String>();
zElemNames.add("0");
fields.add( new UAVObjectField("z", "mGau", UAVObjectField.FieldType.FLOAT32, zElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
MagBias obj = new MagBias();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public MagBias GetInstance(UAVObjectManager objMngr, long instID)
{
return (MagBias)(objMngr.getObject(MagBias.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x5043E510l;
protected static final String NAME = "MagBias";
protected static String DESCRIPTION = "The gyro data.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The mag data.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The mag data.
generated from magnetometer.xml
**/
public class Magnetometer extends UAVDataObject {
public Magnetometer() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> xElemNames = new ArrayList<String>();
xElemNames.add("0");
fields.add( new UAVObjectField("x", "mGa", UAVObjectField.FieldType.FLOAT32, xElemNames, null) );
List<String> yElemNames = new ArrayList<String>();
yElemNames.add("0");
fields.add( new UAVObjectField("y", "mGa", UAVObjectField.FieldType.FLOAT32, yElemNames, null) );
List<String> zElemNames = new ArrayList<String>();
zElemNames.add("0");
fields.add( new UAVObjectField("z", "mGa", UAVObjectField.FieldType.FLOAT32, zElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
Magnetometer obj = new Magnetometer();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public Magnetometer GetInstance(UAVObjectManager objMngr, long instID)
{
return (Magnetometer)(objMngr.getObject(Magnetometer.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x813B55DEl;
protected static final String NAME = "Magnetometer";
protected static String DESCRIPTION = "The mag data.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,173 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The output from the @ref ManualControlModule which descodes the receiver inputs. Overriden by GCS for fly-by-wire control.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The output from the @ref ManualControlModule which descodes the receiver inputs. Overriden by GCS for fly-by-wire control.
generated from manualcontrolcommand.xml
**/
public class ManualControlCommand extends UAVDataObject {
public ManualControlCommand() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ThrottleElemNames = new ArrayList<String>();
ThrottleElemNames.add("0");
fields.add( new UAVObjectField("Throttle", "%", UAVObjectField.FieldType.FLOAT32, ThrottleElemNames, null) );
List<String> RollElemNames = new ArrayList<String>();
RollElemNames.add("0");
fields.add( new UAVObjectField("Roll", "%", UAVObjectField.FieldType.FLOAT32, RollElemNames, null) );
List<String> PitchElemNames = new ArrayList<String>();
PitchElemNames.add("0");
fields.add( new UAVObjectField("Pitch", "%", UAVObjectField.FieldType.FLOAT32, PitchElemNames, null) );
List<String> YawElemNames = new ArrayList<String>();
YawElemNames.add("0");
fields.add( new UAVObjectField("Yaw", "%", UAVObjectField.FieldType.FLOAT32, YawElemNames, null) );
List<String> CollectiveElemNames = new ArrayList<String>();
CollectiveElemNames.add("0");
fields.add( new UAVObjectField("Collective", "%", UAVObjectField.FieldType.FLOAT32, CollectiveElemNames, null) );
List<String> ChannelElemNames = new ArrayList<String>();
ChannelElemNames.add("0");
ChannelElemNames.add("1");
ChannelElemNames.add("2");
ChannelElemNames.add("3");
ChannelElemNames.add("4");
ChannelElemNames.add("5");
ChannelElemNames.add("6");
ChannelElemNames.add("7");
ChannelElemNames.add("8");
fields.add( new UAVObjectField("Channel", "us", UAVObjectField.FieldType.UINT16, ChannelElemNames, null) );
List<String> ConnectedElemNames = new ArrayList<String>();
ConnectedElemNames.add("0");
List<String> ConnectedEnumOptions = new ArrayList<String>();
ConnectedEnumOptions.add("False");
ConnectedEnumOptions.add("True");
fields.add( new UAVObjectField("Connected", "", UAVObjectField.FieldType.ENUM, ConnectedElemNames, ConnectedEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 2000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
ManualControlCommand obj = new ManualControlCommand();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public ManualControlCommand GetInstance(UAVObjectManager objMngr, long instID)
{
return (ManualControlCommand)(objMngr.getObject(ManualControlCommand.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x1E82C2D2l;
protected static final String NAME = "ManualControlCommand";
protected static String DESCRIPTION = "The output from the @ref ManualControlModule which descodes the receiver inputs. Overriden by GCS for fly-by-wire control.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,354 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings to indicate how to decode receiver input by @ref ManualControlModule.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings to indicate how to decode receiver input by @ref ManualControlModule.
generated from manualcontrolsettings.xml
**/
public class ManualControlSettings extends UAVDataObject {
public ManualControlSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> DeadbandElemNames = new ArrayList<String>();
DeadbandElemNames.add("0");
fields.add( new UAVObjectField("Deadband", "%", UAVObjectField.FieldType.FLOAT32, DeadbandElemNames, null) );
List<String> ChannelMinElemNames = new ArrayList<String>();
ChannelMinElemNames.add("Throttle");
ChannelMinElemNames.add("Roll");
ChannelMinElemNames.add("Pitch");
ChannelMinElemNames.add("Yaw");
ChannelMinElemNames.add("FlightMode");
ChannelMinElemNames.add("Collective");
ChannelMinElemNames.add("Accessory0");
ChannelMinElemNames.add("Accessory1");
ChannelMinElemNames.add("Accessory2");
fields.add( new UAVObjectField("ChannelMin", "us", UAVObjectField.FieldType.INT16, ChannelMinElemNames, null) );
List<String> ChannelNeutralElemNames = new ArrayList<String>();
ChannelNeutralElemNames.add("Throttle");
ChannelNeutralElemNames.add("Roll");
ChannelNeutralElemNames.add("Pitch");
ChannelNeutralElemNames.add("Yaw");
ChannelNeutralElemNames.add("FlightMode");
ChannelNeutralElemNames.add("Collective");
ChannelNeutralElemNames.add("Accessory0");
ChannelNeutralElemNames.add("Accessory1");
ChannelNeutralElemNames.add("Accessory2");
fields.add( new UAVObjectField("ChannelNeutral", "us", UAVObjectField.FieldType.INT16, ChannelNeutralElemNames, null) );
List<String> ChannelMaxElemNames = new ArrayList<String>();
ChannelMaxElemNames.add("Throttle");
ChannelMaxElemNames.add("Roll");
ChannelMaxElemNames.add("Pitch");
ChannelMaxElemNames.add("Yaw");
ChannelMaxElemNames.add("FlightMode");
ChannelMaxElemNames.add("Collective");
ChannelMaxElemNames.add("Accessory0");
ChannelMaxElemNames.add("Accessory1");
ChannelMaxElemNames.add("Accessory2");
fields.add( new UAVObjectField("ChannelMax", "us", UAVObjectField.FieldType.INT16, ChannelMaxElemNames, null) );
List<String> ArmedTimeoutElemNames = new ArrayList<String>();
ArmedTimeoutElemNames.add("0");
fields.add( new UAVObjectField("ArmedTimeout", "ms", UAVObjectField.FieldType.UINT16, ArmedTimeoutElemNames, null) );
List<String> ChannelGroupsElemNames = new ArrayList<String>();
ChannelGroupsElemNames.add("Throttle");
ChannelGroupsElemNames.add("Roll");
ChannelGroupsElemNames.add("Pitch");
ChannelGroupsElemNames.add("Yaw");
ChannelGroupsElemNames.add("FlightMode");
ChannelGroupsElemNames.add("Collective");
ChannelGroupsElemNames.add("Accessory0");
ChannelGroupsElemNames.add("Accessory1");
ChannelGroupsElemNames.add("Accessory2");
List<String> ChannelGroupsEnumOptions = new ArrayList<String>();
ChannelGroupsEnumOptions.add("PWM");
ChannelGroupsEnumOptions.add("PPM");
ChannelGroupsEnumOptions.add("DSM (MainPort)");
ChannelGroupsEnumOptions.add("DSM (FlexiPort)");
ChannelGroupsEnumOptions.add("S.Bus");
ChannelGroupsEnumOptions.add("GCS");
ChannelGroupsEnumOptions.add("None");
fields.add( new UAVObjectField("ChannelGroups", "Channel Group", UAVObjectField.FieldType.ENUM, ChannelGroupsElemNames, ChannelGroupsEnumOptions) );
List<String> ChannelNumberElemNames = new ArrayList<String>();
ChannelNumberElemNames.add("Throttle");
ChannelNumberElemNames.add("Roll");
ChannelNumberElemNames.add("Pitch");
ChannelNumberElemNames.add("Yaw");
ChannelNumberElemNames.add("FlightMode");
ChannelNumberElemNames.add("Collective");
ChannelNumberElemNames.add("Accessory0");
ChannelNumberElemNames.add("Accessory1");
ChannelNumberElemNames.add("Accessory2");
fields.add( new UAVObjectField("ChannelNumber", "channel", UAVObjectField.FieldType.UINT8, ChannelNumberElemNames, null) );
List<String> ArmingElemNames = new ArrayList<String>();
ArmingElemNames.add("0");
List<String> ArmingEnumOptions = new ArrayList<String>();
ArmingEnumOptions.add("Always Disarmed");
ArmingEnumOptions.add("Always Armed");
ArmingEnumOptions.add("Roll Left");
ArmingEnumOptions.add("Roll Right");
ArmingEnumOptions.add("Pitch Forward");
ArmingEnumOptions.add("Pitch Aft");
ArmingEnumOptions.add("Yaw Left");
ArmingEnumOptions.add("Yaw Right");
fields.add( new UAVObjectField("Arming", "", UAVObjectField.FieldType.ENUM, ArmingElemNames, ArmingEnumOptions) );
List<String> Stabilization1SettingsElemNames = new ArrayList<String>();
Stabilization1SettingsElemNames.add("Roll");
Stabilization1SettingsElemNames.add("Pitch");
Stabilization1SettingsElemNames.add("Yaw");
List<String> Stabilization1SettingsEnumOptions = new ArrayList<String>();
Stabilization1SettingsEnumOptions.add("None");
Stabilization1SettingsEnumOptions.add("Rate");
Stabilization1SettingsEnumOptions.add("Attitude");
Stabilization1SettingsEnumOptions.add("AxisLock");
Stabilization1SettingsEnumOptions.add("WeakLeveling");
Stabilization1SettingsEnumOptions.add("VirtualBar");
Stabilization1SettingsEnumOptions.add("RelayRate");
Stabilization1SettingsEnumOptions.add("RelayAttitude");
fields.add( new UAVObjectField("Stabilization1Settings", "", UAVObjectField.FieldType.ENUM, Stabilization1SettingsElemNames, Stabilization1SettingsEnumOptions) );
List<String> Stabilization2SettingsElemNames = new ArrayList<String>();
Stabilization2SettingsElemNames.add("Roll");
Stabilization2SettingsElemNames.add("Pitch");
Stabilization2SettingsElemNames.add("Yaw");
List<String> Stabilization2SettingsEnumOptions = new ArrayList<String>();
Stabilization2SettingsEnumOptions.add("None");
Stabilization2SettingsEnumOptions.add("Rate");
Stabilization2SettingsEnumOptions.add("Attitude");
Stabilization2SettingsEnumOptions.add("AxisLock");
Stabilization2SettingsEnumOptions.add("WeakLeveling");
Stabilization2SettingsEnumOptions.add("VirtualBar");
Stabilization2SettingsEnumOptions.add("RelayRate");
Stabilization2SettingsEnumOptions.add("RelayAttitude");
fields.add( new UAVObjectField("Stabilization2Settings", "", UAVObjectField.FieldType.ENUM, Stabilization2SettingsElemNames, Stabilization2SettingsEnumOptions) );
List<String> Stabilization3SettingsElemNames = new ArrayList<String>();
Stabilization3SettingsElemNames.add("Roll");
Stabilization3SettingsElemNames.add("Pitch");
Stabilization3SettingsElemNames.add("Yaw");
List<String> Stabilization3SettingsEnumOptions = new ArrayList<String>();
Stabilization3SettingsEnumOptions.add("None");
Stabilization3SettingsEnumOptions.add("Rate");
Stabilization3SettingsEnumOptions.add("Attitude");
Stabilization3SettingsEnumOptions.add("AxisLock");
Stabilization3SettingsEnumOptions.add("WeakLeveling");
Stabilization3SettingsEnumOptions.add("VirtualBar");
Stabilization3SettingsEnumOptions.add("RelayRate");
Stabilization3SettingsEnumOptions.add("RelayAttitude");
fields.add( new UAVObjectField("Stabilization3Settings", "", UAVObjectField.FieldType.ENUM, Stabilization3SettingsElemNames, Stabilization3SettingsEnumOptions) );
List<String> FlightModeNumberElemNames = new ArrayList<String>();
FlightModeNumberElemNames.add("0");
fields.add( new UAVObjectField("FlightModeNumber", "", UAVObjectField.FieldType.UINT8, FlightModeNumberElemNames, null) );
List<String> FlightModePositionElemNames = new ArrayList<String>();
FlightModePositionElemNames.add("0");
FlightModePositionElemNames.add("1");
FlightModePositionElemNames.add("2");
FlightModePositionElemNames.add("3");
FlightModePositionElemNames.add("4");
FlightModePositionElemNames.add("5");
List<String> FlightModePositionEnumOptions = new ArrayList<String>();
FlightModePositionEnumOptions.add("Manual");
FlightModePositionEnumOptions.add("Stabilized1");
FlightModePositionEnumOptions.add("Stabilized2");
FlightModePositionEnumOptions.add("Stabilized3");
FlightModePositionEnumOptions.add("Autotune");
FlightModePositionEnumOptions.add("AltitudeHold");
FlightModePositionEnumOptions.add("VelocityControl");
FlightModePositionEnumOptions.add("PositionHold");
fields.add( new UAVObjectField("FlightModePosition", "", UAVObjectField.FieldType.ENUM, FlightModePositionElemNames, FlightModePositionEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Deadband").setValue(0);
getField("ChannelMin").setValue(1000,0);
getField("ChannelMin").setValue(1000,1);
getField("ChannelMin").setValue(1000,2);
getField("ChannelMin").setValue(1000,3);
getField("ChannelMin").setValue(1000,4);
getField("ChannelMin").setValue(1000,5);
getField("ChannelMin").setValue(1000,6);
getField("ChannelMin").setValue(1000,7);
getField("ChannelMin").setValue(1000,8);
getField("ChannelNeutral").setValue(1500,0);
getField("ChannelNeutral").setValue(1500,1);
getField("ChannelNeutral").setValue(1500,2);
getField("ChannelNeutral").setValue(1500,3);
getField("ChannelNeutral").setValue(1500,4);
getField("ChannelNeutral").setValue(1500,5);
getField("ChannelNeutral").setValue(1500,6);
getField("ChannelNeutral").setValue(1500,7);
getField("ChannelNeutral").setValue(1500,8);
getField("ChannelMax").setValue(2000,0);
getField("ChannelMax").setValue(2000,1);
getField("ChannelMax").setValue(2000,2);
getField("ChannelMax").setValue(2000,3);
getField("ChannelMax").setValue(2000,4);
getField("ChannelMax").setValue(2000,5);
getField("ChannelMax").setValue(2000,6);
getField("ChannelMax").setValue(2000,7);
getField("ChannelMax").setValue(2000,8);
getField("ArmedTimeout").setValue(30000);
getField("ChannelGroups").setValue("None",0);
getField("ChannelGroups").setValue("None",1);
getField("ChannelGroups").setValue("None",2);
getField("ChannelGroups").setValue("None",3);
getField("ChannelGroups").setValue("None",4);
getField("ChannelGroups").setValue("None",5);
getField("ChannelGroups").setValue("None",6);
getField("ChannelGroups").setValue("None",7);
getField("ChannelGroups").setValue("None",8);
getField("ChannelNumber").setValue(0,0);
getField("ChannelNumber").setValue(0,1);
getField("ChannelNumber").setValue(0,2);
getField("ChannelNumber").setValue(0,3);
getField("ChannelNumber").setValue(0,4);
getField("ChannelNumber").setValue(0,5);
getField("ChannelNumber").setValue(0,6);
getField("ChannelNumber").setValue(0,7);
getField("ChannelNumber").setValue(0,8);
getField("Arming").setValue("Always Disarmed");
getField("Stabilization1Settings").setValue("Attitude",0);
getField("Stabilization1Settings").setValue("Attitude",1);
getField("Stabilization1Settings").setValue("Rate",2);
getField("Stabilization2Settings").setValue("Attitude",0);
getField("Stabilization2Settings").setValue("Attitude",1);
getField("Stabilization2Settings").setValue("Rate",2);
getField("Stabilization3Settings").setValue("Attitude",0);
getField("Stabilization3Settings").setValue("Attitude",1);
getField("Stabilization3Settings").setValue("Rate",2);
getField("FlightModeNumber").setValue(3);
getField("FlightModePosition").setValue("Manual",0);
getField("FlightModePosition").setValue("Stabilized1",1);
getField("FlightModePosition").setValue("Stabilized2",2);
getField("FlightModePosition").setValue("Stabilized3",3);
getField("FlightModePosition").setValue("Stabilized1",4);
getField("FlightModePosition").setValue("Stabilized2",5);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
ManualControlSettings obj = new ManualControlSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public ManualControlSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (ManualControlSettings)(objMngr.getObject(ManualControlSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xA240D466l;
protected static final String NAME = "ManualControlSettings";
protected static String DESCRIPTION = "Settings to indicate how to decode receiver input by @ref ManualControlModule.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,507 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref ActuatorModule that controls the channel assignments for the mixer based on AircraftType
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref ActuatorModule that controls the channel assignments for the mixer based on AircraftType
generated from mixersettings.xml
**/
public class MixerSettings extends UAVDataObject {
public MixerSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> MaxAccelElemNames = new ArrayList<String>();
MaxAccelElemNames.add("0");
fields.add( new UAVObjectField("MaxAccel", "units/sec", UAVObjectField.FieldType.FLOAT32, MaxAccelElemNames, null) );
List<String> FeedForwardElemNames = new ArrayList<String>();
FeedForwardElemNames.add("0");
fields.add( new UAVObjectField("FeedForward", "", UAVObjectField.FieldType.FLOAT32, FeedForwardElemNames, null) );
List<String> AccelTimeElemNames = new ArrayList<String>();
AccelTimeElemNames.add("0");
fields.add( new UAVObjectField("AccelTime", "ms", UAVObjectField.FieldType.FLOAT32, AccelTimeElemNames, null) );
List<String> DecelTimeElemNames = new ArrayList<String>();
DecelTimeElemNames.add("0");
fields.add( new UAVObjectField("DecelTime", "ms", UAVObjectField.FieldType.FLOAT32, DecelTimeElemNames, null) );
List<String> ThrottleCurve1ElemNames = new ArrayList<String>();
ThrottleCurve1ElemNames.add("0");
ThrottleCurve1ElemNames.add("25");
ThrottleCurve1ElemNames.add("50");
ThrottleCurve1ElemNames.add("75");
ThrottleCurve1ElemNames.add("100");
fields.add( new UAVObjectField("ThrottleCurve1", "percent", UAVObjectField.FieldType.FLOAT32, ThrottleCurve1ElemNames, null) );
List<String> ThrottleCurve2ElemNames = new ArrayList<String>();
ThrottleCurve2ElemNames.add("0");
ThrottleCurve2ElemNames.add("25");
ThrottleCurve2ElemNames.add("50");
ThrottleCurve2ElemNames.add("75");
ThrottleCurve2ElemNames.add("100");
fields.add( new UAVObjectField("ThrottleCurve2", "percent", UAVObjectField.FieldType.FLOAT32, ThrottleCurve2ElemNames, null) );
List<String> Curve2SourceElemNames = new ArrayList<String>();
Curve2SourceElemNames.add("0");
List<String> Curve2SourceEnumOptions = new ArrayList<String>();
Curve2SourceEnumOptions.add("Throttle");
Curve2SourceEnumOptions.add("Roll");
Curve2SourceEnumOptions.add("Pitch");
Curve2SourceEnumOptions.add("Yaw");
Curve2SourceEnumOptions.add("Collective");
Curve2SourceEnumOptions.add("Accessory0");
Curve2SourceEnumOptions.add("Accessory1");
Curve2SourceEnumOptions.add("Accessory2");
Curve2SourceEnumOptions.add("Accessory3");
Curve2SourceEnumOptions.add("Accessory4");
Curve2SourceEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Curve2Source", "", UAVObjectField.FieldType.ENUM, Curve2SourceElemNames, Curve2SourceEnumOptions) );
List<String> Mixer1TypeElemNames = new ArrayList<String>();
Mixer1TypeElemNames.add("0");
List<String> Mixer1TypeEnumOptions = new ArrayList<String>();
Mixer1TypeEnumOptions.add("Disabled");
Mixer1TypeEnumOptions.add("Motor");
Mixer1TypeEnumOptions.add("Servo");
Mixer1TypeEnumOptions.add("CameraRoll");
Mixer1TypeEnumOptions.add("CameraPitch");
Mixer1TypeEnumOptions.add("CameraYaw");
Mixer1TypeEnumOptions.add("Accessory0");
Mixer1TypeEnumOptions.add("Accessory1");
Mixer1TypeEnumOptions.add("Accessory2");
Mixer1TypeEnumOptions.add("Accessory3");
Mixer1TypeEnumOptions.add("Accessory4");
Mixer1TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer1Type", "", UAVObjectField.FieldType.ENUM, Mixer1TypeElemNames, Mixer1TypeEnumOptions) );
List<String> Mixer1VectorElemNames = new ArrayList<String>();
Mixer1VectorElemNames.add("ThrottleCurve1");
Mixer1VectorElemNames.add("ThrottleCurve2");
Mixer1VectorElemNames.add("Roll");
Mixer1VectorElemNames.add("Pitch");
Mixer1VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer1Vector", "", UAVObjectField.FieldType.INT8, Mixer1VectorElemNames, null) );
List<String> Mixer2TypeElemNames = new ArrayList<String>();
Mixer2TypeElemNames.add("0");
List<String> Mixer2TypeEnumOptions = new ArrayList<String>();
Mixer2TypeEnumOptions.add("Disabled");
Mixer2TypeEnumOptions.add("Motor");
Mixer2TypeEnumOptions.add("Servo");
Mixer2TypeEnumOptions.add("CameraRoll");
Mixer2TypeEnumOptions.add("CameraPitch");
Mixer2TypeEnumOptions.add("CameraYaw");
Mixer2TypeEnumOptions.add("Accessory0");
Mixer2TypeEnumOptions.add("Accessory1");
Mixer2TypeEnumOptions.add("Accessory2");
Mixer2TypeEnumOptions.add("Accessory3");
Mixer2TypeEnumOptions.add("Accessory4");
Mixer2TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer2Type", "", UAVObjectField.FieldType.ENUM, Mixer2TypeElemNames, Mixer2TypeEnumOptions) );
List<String> Mixer2VectorElemNames = new ArrayList<String>();
Mixer2VectorElemNames.add("ThrottleCurve1");
Mixer2VectorElemNames.add("ThrottleCurve2");
Mixer2VectorElemNames.add("Roll");
Mixer2VectorElemNames.add("Pitch");
Mixer2VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer2Vector", "", UAVObjectField.FieldType.INT8, Mixer2VectorElemNames, null) );
List<String> Mixer3TypeElemNames = new ArrayList<String>();
Mixer3TypeElemNames.add("0");
List<String> Mixer3TypeEnumOptions = new ArrayList<String>();
Mixer3TypeEnumOptions.add("Disabled");
Mixer3TypeEnumOptions.add("Motor");
Mixer3TypeEnumOptions.add("Servo");
Mixer3TypeEnumOptions.add("CameraRoll");
Mixer3TypeEnumOptions.add("CameraPitch");
Mixer3TypeEnumOptions.add("CameraYaw");
Mixer3TypeEnumOptions.add("Accessory0");
Mixer3TypeEnumOptions.add("Accessory1");
Mixer3TypeEnumOptions.add("Accessory2");
Mixer3TypeEnumOptions.add("Accessory3");
Mixer3TypeEnumOptions.add("Accessory4");
Mixer3TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer3Type", "", UAVObjectField.FieldType.ENUM, Mixer3TypeElemNames, Mixer3TypeEnumOptions) );
List<String> Mixer3VectorElemNames = new ArrayList<String>();
Mixer3VectorElemNames.add("ThrottleCurve1");
Mixer3VectorElemNames.add("ThrottleCurve2");
Mixer3VectorElemNames.add("Roll");
Mixer3VectorElemNames.add("Pitch");
Mixer3VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer3Vector", "", UAVObjectField.FieldType.INT8, Mixer3VectorElemNames, null) );
List<String> Mixer4TypeElemNames = new ArrayList<String>();
Mixer4TypeElemNames.add("0");
List<String> Mixer4TypeEnumOptions = new ArrayList<String>();
Mixer4TypeEnumOptions.add("Disabled");
Mixer4TypeEnumOptions.add("Motor");
Mixer4TypeEnumOptions.add("Servo");
Mixer4TypeEnumOptions.add("CameraRoll");
Mixer4TypeEnumOptions.add("CameraPitch");
Mixer4TypeEnumOptions.add("CameraYaw");
Mixer4TypeEnumOptions.add("Accessory0");
Mixer4TypeEnumOptions.add("Accessory1");
Mixer4TypeEnumOptions.add("Accessory2");
Mixer4TypeEnumOptions.add("Accessory3");
Mixer4TypeEnumOptions.add("Accessory4");
Mixer4TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer4Type", "", UAVObjectField.FieldType.ENUM, Mixer4TypeElemNames, Mixer4TypeEnumOptions) );
List<String> Mixer4VectorElemNames = new ArrayList<String>();
Mixer4VectorElemNames.add("ThrottleCurve1");
Mixer4VectorElemNames.add("ThrottleCurve2");
Mixer4VectorElemNames.add("Roll");
Mixer4VectorElemNames.add("Pitch");
Mixer4VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer4Vector", "", UAVObjectField.FieldType.INT8, Mixer4VectorElemNames, null) );
List<String> Mixer5TypeElemNames = new ArrayList<String>();
Mixer5TypeElemNames.add("0");
List<String> Mixer5TypeEnumOptions = new ArrayList<String>();
Mixer5TypeEnumOptions.add("Disabled");
Mixer5TypeEnumOptions.add("Motor");
Mixer5TypeEnumOptions.add("Servo");
Mixer5TypeEnumOptions.add("CameraRoll");
Mixer5TypeEnumOptions.add("CameraPitch");
Mixer5TypeEnumOptions.add("CameraYaw");
Mixer5TypeEnumOptions.add("Accessory0");
Mixer5TypeEnumOptions.add("Accessory1");
Mixer5TypeEnumOptions.add("Accessory2");
Mixer5TypeEnumOptions.add("Accessory3");
Mixer5TypeEnumOptions.add("Accessory4");
Mixer5TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer5Type", "", UAVObjectField.FieldType.ENUM, Mixer5TypeElemNames, Mixer5TypeEnumOptions) );
List<String> Mixer5VectorElemNames = new ArrayList<String>();
Mixer5VectorElemNames.add("ThrottleCurve1");
Mixer5VectorElemNames.add("ThrottleCurve2");
Mixer5VectorElemNames.add("Roll");
Mixer5VectorElemNames.add("Pitch");
Mixer5VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer5Vector", "", UAVObjectField.FieldType.INT8, Mixer5VectorElemNames, null) );
List<String> Mixer6TypeElemNames = new ArrayList<String>();
Mixer6TypeElemNames.add("0");
List<String> Mixer6TypeEnumOptions = new ArrayList<String>();
Mixer6TypeEnumOptions.add("Disabled");
Mixer6TypeEnumOptions.add("Motor");
Mixer6TypeEnumOptions.add("Servo");
Mixer6TypeEnumOptions.add("CameraRoll");
Mixer6TypeEnumOptions.add("CameraPitch");
Mixer6TypeEnumOptions.add("CameraYaw");
Mixer6TypeEnumOptions.add("Accessory0");
Mixer6TypeEnumOptions.add("Accessory1");
Mixer6TypeEnumOptions.add("Accessory2");
Mixer6TypeEnumOptions.add("Accessory3");
Mixer6TypeEnumOptions.add("Accessory4");
Mixer6TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer6Type", "", UAVObjectField.FieldType.ENUM, Mixer6TypeElemNames, Mixer6TypeEnumOptions) );
List<String> Mixer6VectorElemNames = new ArrayList<String>();
Mixer6VectorElemNames.add("ThrottleCurve1");
Mixer6VectorElemNames.add("ThrottleCurve2");
Mixer6VectorElemNames.add("Roll");
Mixer6VectorElemNames.add("Pitch");
Mixer6VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer6Vector", "", UAVObjectField.FieldType.INT8, Mixer6VectorElemNames, null) );
List<String> Mixer7TypeElemNames = new ArrayList<String>();
Mixer7TypeElemNames.add("0");
List<String> Mixer7TypeEnumOptions = new ArrayList<String>();
Mixer7TypeEnumOptions.add("Disabled");
Mixer7TypeEnumOptions.add("Motor");
Mixer7TypeEnumOptions.add("Servo");
Mixer7TypeEnumOptions.add("CameraRoll");
Mixer7TypeEnumOptions.add("CameraPitch");
Mixer7TypeEnumOptions.add("CameraYaw");
Mixer7TypeEnumOptions.add("Accessory0");
Mixer7TypeEnumOptions.add("Accessory1");
Mixer7TypeEnumOptions.add("Accessory2");
Mixer7TypeEnumOptions.add("Accessory3");
Mixer7TypeEnumOptions.add("Accessory4");
Mixer7TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer7Type", "", UAVObjectField.FieldType.ENUM, Mixer7TypeElemNames, Mixer7TypeEnumOptions) );
List<String> Mixer7VectorElemNames = new ArrayList<String>();
Mixer7VectorElemNames.add("ThrottleCurve1");
Mixer7VectorElemNames.add("ThrottleCurve2");
Mixer7VectorElemNames.add("Roll");
Mixer7VectorElemNames.add("Pitch");
Mixer7VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer7Vector", "", UAVObjectField.FieldType.INT8, Mixer7VectorElemNames, null) );
List<String> Mixer8TypeElemNames = new ArrayList<String>();
Mixer8TypeElemNames.add("0");
List<String> Mixer8TypeEnumOptions = new ArrayList<String>();
Mixer8TypeEnumOptions.add("Disabled");
Mixer8TypeEnumOptions.add("Motor");
Mixer8TypeEnumOptions.add("Servo");
Mixer8TypeEnumOptions.add("CameraRoll");
Mixer8TypeEnumOptions.add("CameraPitch");
Mixer8TypeEnumOptions.add("CameraYaw");
Mixer8TypeEnumOptions.add("Accessory0");
Mixer8TypeEnumOptions.add("Accessory1");
Mixer8TypeEnumOptions.add("Accessory2");
Mixer8TypeEnumOptions.add("Accessory3");
Mixer8TypeEnumOptions.add("Accessory4");
Mixer8TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer8Type", "", UAVObjectField.FieldType.ENUM, Mixer8TypeElemNames, Mixer8TypeEnumOptions) );
List<String> Mixer8VectorElemNames = new ArrayList<String>();
Mixer8VectorElemNames.add("ThrottleCurve1");
Mixer8VectorElemNames.add("ThrottleCurve2");
Mixer8VectorElemNames.add("Roll");
Mixer8VectorElemNames.add("Pitch");
Mixer8VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer8Vector", "", UAVObjectField.FieldType.INT8, Mixer8VectorElemNames, null) );
List<String> Mixer9TypeElemNames = new ArrayList<String>();
Mixer9TypeElemNames.add("0");
List<String> Mixer9TypeEnumOptions = new ArrayList<String>();
Mixer9TypeEnumOptions.add("Disabled");
Mixer9TypeEnumOptions.add("Motor");
Mixer9TypeEnumOptions.add("Servo");
Mixer9TypeEnumOptions.add("CameraRoll");
Mixer9TypeEnumOptions.add("CameraPitch");
Mixer9TypeEnumOptions.add("CameraYaw");
Mixer9TypeEnumOptions.add("Accessory0");
Mixer9TypeEnumOptions.add("Accessory1");
Mixer9TypeEnumOptions.add("Accessory2");
Mixer9TypeEnumOptions.add("Accessory3");
Mixer9TypeEnumOptions.add("Accessory4");
Mixer9TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer9Type", "", UAVObjectField.FieldType.ENUM, Mixer9TypeElemNames, Mixer9TypeEnumOptions) );
List<String> Mixer9VectorElemNames = new ArrayList<String>();
Mixer9VectorElemNames.add("ThrottleCurve1");
Mixer9VectorElemNames.add("ThrottleCurve2");
Mixer9VectorElemNames.add("Roll");
Mixer9VectorElemNames.add("Pitch");
Mixer9VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer9Vector", "", UAVObjectField.FieldType.INT8, Mixer9VectorElemNames, null) );
List<String> Mixer10TypeElemNames = new ArrayList<String>();
Mixer10TypeElemNames.add("0");
List<String> Mixer10TypeEnumOptions = new ArrayList<String>();
Mixer10TypeEnumOptions.add("Disabled");
Mixer10TypeEnumOptions.add("Motor");
Mixer10TypeEnumOptions.add("Servo");
Mixer10TypeEnumOptions.add("CameraRoll");
Mixer10TypeEnumOptions.add("CameraPitch");
Mixer10TypeEnumOptions.add("CameraYaw");
Mixer10TypeEnumOptions.add("Accessory0");
Mixer10TypeEnumOptions.add("Accessory1");
Mixer10TypeEnumOptions.add("Accessory2");
Mixer10TypeEnumOptions.add("Accessory3");
Mixer10TypeEnumOptions.add("Accessory4");
Mixer10TypeEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Mixer10Type", "", UAVObjectField.FieldType.ENUM, Mixer10TypeElemNames, Mixer10TypeEnumOptions) );
List<String> Mixer10VectorElemNames = new ArrayList<String>();
Mixer10VectorElemNames.add("ThrottleCurve1");
Mixer10VectorElemNames.add("ThrottleCurve2");
Mixer10VectorElemNames.add("Roll");
Mixer10VectorElemNames.add("Pitch");
Mixer10VectorElemNames.add("Yaw");
fields.add( new UAVObjectField("Mixer10Vector", "", UAVObjectField.FieldType.INT8, Mixer10VectorElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("MaxAccel").setValue(1000);
getField("FeedForward").setValue(0);
getField("AccelTime").setValue(0);
getField("DecelTime").setValue(0);
getField("ThrottleCurve1").setValue(0,0);
getField("ThrottleCurve1").setValue(0,1);
getField("ThrottleCurve1").setValue(0,2);
getField("ThrottleCurve1").setValue(0,3);
getField("ThrottleCurve1").setValue(0,4);
getField("ThrottleCurve2").setValue(0,0);
getField("ThrottleCurve2").setValue(0.25,1);
getField("ThrottleCurve2").setValue(0.5,2);
getField("ThrottleCurve2").setValue(0.75,3);
getField("ThrottleCurve2").setValue(1,4);
getField("Curve2Source").setValue("Throttle");
getField("Mixer1Type").setValue("Disabled");
getField("Mixer1Vector").setValue(0,0);
getField("Mixer1Vector").setValue(0,1);
getField("Mixer1Vector").setValue(0,2);
getField("Mixer1Vector").setValue(0,3);
getField("Mixer1Vector").setValue(0,4);
getField("Mixer2Type").setValue("Disabled");
getField("Mixer2Vector").setValue(0,0);
getField("Mixer2Vector").setValue(0,1);
getField("Mixer2Vector").setValue(0,2);
getField("Mixer2Vector").setValue(0,3);
getField("Mixer2Vector").setValue(0,4);
getField("Mixer3Type").setValue("Disabled");
getField("Mixer3Vector").setValue(0,0);
getField("Mixer3Vector").setValue(0,1);
getField("Mixer3Vector").setValue(0,2);
getField("Mixer3Vector").setValue(0,3);
getField("Mixer3Vector").setValue(0,4);
getField("Mixer4Type").setValue("Disabled");
getField("Mixer4Vector").setValue(0,0);
getField("Mixer4Vector").setValue(0,1);
getField("Mixer4Vector").setValue(0,2);
getField("Mixer4Vector").setValue(0,3);
getField("Mixer4Vector").setValue(0,4);
getField("Mixer5Type").setValue("Disabled");
getField("Mixer5Vector").setValue(0,0);
getField("Mixer5Vector").setValue(0,1);
getField("Mixer5Vector").setValue(0,2);
getField("Mixer5Vector").setValue(0,3);
getField("Mixer5Vector").setValue(0,4);
getField("Mixer6Type").setValue("Disabled");
getField("Mixer6Vector").setValue(0,0);
getField("Mixer6Vector").setValue(0,1);
getField("Mixer6Vector").setValue(0,2);
getField("Mixer6Vector").setValue(0,3);
getField("Mixer6Vector").setValue(0,4);
getField("Mixer7Type").setValue("Disabled");
getField("Mixer7Vector").setValue(0,0);
getField("Mixer7Vector").setValue(0,1);
getField("Mixer7Vector").setValue(0,2);
getField("Mixer7Vector").setValue(0,3);
getField("Mixer7Vector").setValue(0,4);
getField("Mixer8Type").setValue("Disabled");
getField("Mixer8Vector").setValue(0,0);
getField("Mixer8Vector").setValue(0,1);
getField("Mixer8Vector").setValue(0,2);
getField("Mixer8Vector").setValue(0,3);
getField("Mixer8Vector").setValue(0,4);
getField("Mixer9Type").setValue("Disabled");
getField("Mixer9Vector").setValue(0,0);
getField("Mixer9Vector").setValue(0,1);
getField("Mixer9Vector").setValue(0,2);
getField("Mixer9Vector").setValue(0,3);
getField("Mixer9Vector").setValue(0,4);
getField("Mixer10Type").setValue("Disabled");
getField("Mixer10Vector").setValue(0,0);
getField("Mixer10Vector").setValue(0,1);
getField("Mixer10Vector").setValue(0,2);
getField("Mixer10Vector").setValue(0,3);
getField("Mixer10Vector").setValue(0,4);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
MixerSettings obj = new MixerSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public MixerSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (MixerSettings)(objMngr.getObject(MixerSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x5D16D6C4l;
protected static final String NAME = "MixerSettings";
protected static String DESCRIPTION = "Settings for the @ref ActuatorModule that controls the channel assignments for the mixer based on AircraftType";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,174 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Status for the matrix mixer showing the output of each mixer after all scaling
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Status for the matrix mixer showing the output of each mixer after all scaling
generated from mixerstatus.xml
**/
public class MixerStatus extends UAVDataObject {
public MixerStatus() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> Mixer1ElemNames = new ArrayList<String>();
Mixer1ElemNames.add("0");
fields.add( new UAVObjectField("Mixer1", "", UAVObjectField.FieldType.FLOAT32, Mixer1ElemNames, null) );
List<String> Mixer2ElemNames = new ArrayList<String>();
Mixer2ElemNames.add("0");
fields.add( new UAVObjectField("Mixer2", "", UAVObjectField.FieldType.FLOAT32, Mixer2ElemNames, null) );
List<String> Mixer3ElemNames = new ArrayList<String>();
Mixer3ElemNames.add("0");
fields.add( new UAVObjectField("Mixer3", "", UAVObjectField.FieldType.FLOAT32, Mixer3ElemNames, null) );
List<String> Mixer4ElemNames = new ArrayList<String>();
Mixer4ElemNames.add("0");
fields.add( new UAVObjectField("Mixer4", "", UAVObjectField.FieldType.FLOAT32, Mixer4ElemNames, null) );
List<String> Mixer5ElemNames = new ArrayList<String>();
Mixer5ElemNames.add("0");
fields.add( new UAVObjectField("Mixer5", "", UAVObjectField.FieldType.FLOAT32, Mixer5ElemNames, null) );
List<String> Mixer6ElemNames = new ArrayList<String>();
Mixer6ElemNames.add("0");
fields.add( new UAVObjectField("Mixer6", "", UAVObjectField.FieldType.FLOAT32, Mixer6ElemNames, null) );
List<String> Mixer7ElemNames = new ArrayList<String>();
Mixer7ElemNames.add("0");
fields.add( new UAVObjectField("Mixer7", "", UAVObjectField.FieldType.FLOAT32, Mixer7ElemNames, null) );
List<String> Mixer8ElemNames = new ArrayList<String>();
Mixer8ElemNames.add("0");
fields.add( new UAVObjectField("Mixer8", "", UAVObjectField.FieldType.FLOAT32, Mixer8ElemNames, null) );
List<String> Mixer9ElemNames = new ArrayList<String>();
Mixer9ElemNames.add("0");
fields.add( new UAVObjectField("Mixer9", "", UAVObjectField.FieldType.FLOAT32, Mixer9ElemNames, null) );
List<String> Mixer10ElemNames = new ArrayList<String>();
Mixer10ElemNames.add("0");
fields.add( new UAVObjectField("Mixer10", "", UAVObjectField.FieldType.FLOAT32, Mixer10ElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
MixerStatus obj = new MixerStatus();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public MixerStatus GetInstance(UAVObjectManager objMngr, long instID)
{
return (MixerStatus)(objMngr.getObject(MixerStatus.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x124E28Al;
protected static final String NAME = "MixerStatus";
protected static String DESCRIPTION = "Status for the matrix mixer showing the output of each mixer after all scaling";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Contains the current position relative to @ref HomeLocation
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Contains the current position relative to @ref HomeLocation
generated from nedposition.xml
**/
public class NEDPosition extends UAVDataObject {
public NEDPosition() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> NorthElemNames = new ArrayList<String>();
NorthElemNames.add("0");
fields.add( new UAVObjectField("North", "m", UAVObjectField.FieldType.FLOAT32, NorthElemNames, null) );
List<String> EastElemNames = new ArrayList<String>();
EastElemNames.add("0");
fields.add( new UAVObjectField("East", "m", UAVObjectField.FieldType.FLOAT32, EastElemNames, null) );
List<String> DownElemNames = new ArrayList<String>();
DownElemNames.add("0");
fields.add( new UAVObjectField("Down", "m", UAVObjectField.FieldType.FLOAT32, DownElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
NEDPosition obj = new NEDPosition();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public NEDPosition GetInstance(UAVObjectManager objMngr, long instID)
{
return (NEDPosition)(objMngr.getObject(NEDPosition.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x1FB15A00l;
protected static final String NAME = "NEDPosition";
protected static String DESCRIPTION = "Contains the current position relative to @ref HomeLocation";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The projection of acceleration in the NED reference frame used by @ref Guidance.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The projection of acceleration in the NED reference frame used by @ref Guidance.
generated from nedaccel.xml
**/
public class NedAccel extends UAVDataObject {
public NedAccel() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> NorthElemNames = new ArrayList<String>();
NorthElemNames.add("0");
fields.add( new UAVObjectField("North", "m/s^2", UAVObjectField.FieldType.FLOAT32, NorthElemNames, null) );
List<String> EastElemNames = new ArrayList<String>();
EastElemNames.add("0");
fields.add( new UAVObjectField("East", "m/s^2", UAVObjectField.FieldType.FLOAT32, EastElemNames, null) );
List<String> DownElemNames = new ArrayList<String>();
DownElemNames.add("0");
fields.add( new UAVObjectField("Down", "m/s^2", UAVObjectField.FieldType.FLOAT32, DownElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 10001;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
NedAccel obj = new NedAccel();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public NedAccel GetInstance(UAVObjectManager objMngr, long instID)
{
return (NedAccel)(objMngr.getObject(NedAccel.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x7C7F5BC0l;
protected static final String NAME = "NedAccel";
protected static String DESCRIPTION = "The projection of acceleration in the NED reference frame used by @ref Guidance.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,163 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Someone who knows please enter this
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Someone who knows please enter this
generated from objectpersistence.xml
**/
public class ObjectPersistence extends UAVDataObject {
public ObjectPersistence() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ObjectIDElemNames = new ArrayList<String>();
ObjectIDElemNames.add("0");
fields.add( new UAVObjectField("ObjectID", "", UAVObjectField.FieldType.UINT32, ObjectIDElemNames, null) );
List<String> InstanceIDElemNames = new ArrayList<String>();
InstanceIDElemNames.add("0");
fields.add( new UAVObjectField("InstanceID", "", UAVObjectField.FieldType.UINT32, InstanceIDElemNames, null) );
List<String> OperationElemNames = new ArrayList<String>();
OperationElemNames.add("0");
List<String> OperationEnumOptions = new ArrayList<String>();
OperationEnumOptions.add("NOP");
OperationEnumOptions.add("Load");
OperationEnumOptions.add("Save");
OperationEnumOptions.add("Delete");
OperationEnumOptions.add("FullErase");
OperationEnumOptions.add("Completed");
OperationEnumOptions.add("Error");
fields.add( new UAVObjectField("Operation", "", UAVObjectField.FieldType.ENUM, OperationElemNames, OperationEnumOptions) );
List<String> SelectionElemNames = new ArrayList<String>();
SelectionElemNames.add("0");
List<String> SelectionEnumOptions = new ArrayList<String>();
SelectionEnumOptions.add("SingleObject");
SelectionEnumOptions.add("AllSettings");
SelectionEnumOptions.add("AllMetaObjects");
SelectionEnumOptions.add("AllObjects");
fields.add( new UAVObjectField("Selection", "", UAVObjectField.FieldType.ENUM, SelectionElemNames, SelectionEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
ObjectPersistence obj = new ObjectPersistence();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public ObjectPersistence GetInstance(UAVObjectManager objMngr, long instID)
{
return (ObjectPersistence)(objMngr.getObject(ObjectPersistence.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x99C63292l;
protected static final String NAME = "ObjectPersistence";
protected static String DESCRIPTION = "Someone who knows please enter this";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,143 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings to control the behavior of the overo sync module
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings to control the behavior of the overo sync module
generated from overosyncsettings.xml
**/
public class OveroSyncSettings extends UAVDataObject {
public OveroSyncSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> LogOnElemNames = new ArrayList<String>();
LogOnElemNames.add("0");
List<String> LogOnEnumOptions = new ArrayList<String>();
LogOnEnumOptions.add("Never");
LogOnEnumOptions.add("Always");
LogOnEnumOptions.add("Armed");
fields.add( new UAVObjectField("LogOn", "", UAVObjectField.FieldType.ENUM, LogOnElemNames, LogOnEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("LogOn").setValue("Armed");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
OveroSyncSettings obj = new OveroSyncSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public OveroSyncSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (OveroSyncSettings)(objMngr.getObject(OveroSyncSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xA1ABC278l;
protected static final String NAME = "OveroSyncSettings";
protected static String DESCRIPTION = "Settings to control the behavior of the overo sync module";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,153 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Maintains statistics on transfer rate to and from over
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Maintains statistics on transfer rate to and from over
generated from overosyncstats.xml
**/
public class OveroSyncStats extends UAVDataObject {
public OveroSyncStats() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> SendElemNames = new ArrayList<String>();
SendElemNames.add("0");
fields.add( new UAVObjectField("Send", "B/s", UAVObjectField.FieldType.UINT32, SendElemNames, null) );
List<String> ReceivedElemNames = new ArrayList<String>();
ReceivedElemNames.add("0");
fields.add( new UAVObjectField("Received", "B/s", UAVObjectField.FieldType.UINT32, ReceivedElemNames, null) );
List<String> DroppedUpdatesElemNames = new ArrayList<String>();
DroppedUpdatesElemNames.add("0");
fields.add( new UAVObjectField("DroppedUpdates", "", UAVObjectField.FieldType.UINT32, DroppedUpdatesElemNames, null) );
List<String> ConnectedElemNames = new ArrayList<String>();
ConnectedElemNames.add("0");
List<String> ConnectedEnumOptions = new ArrayList<String>();
ConnectedEnumOptions.add("False");
ConnectedEnumOptions.add("True");
fields.add( new UAVObjectField("Connected", "", UAVObjectField.FieldType.ENUM, ConnectedElemNames, ConnectedEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
OveroSyncStats obj = new OveroSyncStats();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public OveroSyncStats GetInstance(UAVObjectManager objMngr, long instID)
{
return (OveroSyncStats)(objMngr.getObject(OveroSyncStats.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x388468B8l;
protected static final String NAME = "OveroSyncStats";
protected static String DESCRIPTION = "Maintains statistics on transfer rate to and from over";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,195 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* A waypoint command the pathplanner is to use at a certain waypoint
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
A waypoint command the pathplanner is to use at a certain waypoint
generated from pathaction.xml
**/
public class PathAction extends UAVDataObject {
public PathAction() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ModeParametersElemNames = new ArrayList<String>();
ModeParametersElemNames.add("0");
ModeParametersElemNames.add("1");
ModeParametersElemNames.add("2");
ModeParametersElemNames.add("3");
fields.add( new UAVObjectField("ModeParameters", "", UAVObjectField.FieldType.FLOAT32, ModeParametersElemNames, null) );
List<String> ConditionParametersElemNames = new ArrayList<String>();
ConditionParametersElemNames.add("0");
ConditionParametersElemNames.add("1");
ConditionParametersElemNames.add("2");
ConditionParametersElemNames.add("3");
fields.add( new UAVObjectField("ConditionParameters", "", UAVObjectField.FieldType.FLOAT32, ConditionParametersElemNames, null) );
List<String> ModeElemNames = new ArrayList<String>();
ModeElemNames.add("0");
List<String> ModeEnumOptions = new ArrayList<String>();
ModeEnumOptions.add("FlyEndpoint");
ModeEnumOptions.add("FlyVector");
ModeEnumOptions.add("FlyCircleRight");
ModeEnumOptions.add("FlyCircleLeft");
ModeEnumOptions.add("DriveEndpoint");
ModeEnumOptions.add("DriveVector");
ModeEnumOptions.add("DriveCircleLeft");
ModeEnumOptions.add("DriveCircleRight");
ModeEnumOptions.add("FixedAttitude");
ModeEnumOptions.add("SetAccessory");
ModeEnumOptions.add("DisarmAlarm");
fields.add( new UAVObjectField("Mode", "", UAVObjectField.FieldType.ENUM, ModeElemNames, ModeEnumOptions) );
List<String> EndConditionElemNames = new ArrayList<String>();
EndConditionElemNames.add("0");
List<String> EndConditionEnumOptions = new ArrayList<String>();
EndConditionEnumOptions.add("None");
EndConditionEnumOptions.add("TimeOut");
EndConditionEnumOptions.add("DistanceToTarget");
EndConditionEnumOptions.add("LegRemaining");
EndConditionEnumOptions.add("AboveAltitude");
EndConditionEnumOptions.add("PointingTowardsNext");
EndConditionEnumOptions.add("PythonScript");
EndConditionEnumOptions.add("Immediate");
fields.add( new UAVObjectField("EndCondition", "", UAVObjectField.FieldType.ENUM, EndConditionElemNames, EndConditionEnumOptions) );
List<String> CommandElemNames = new ArrayList<String>();
CommandElemNames.add("0");
List<String> CommandEnumOptions = new ArrayList<String>();
CommandEnumOptions.add("OnConditionNextWaypoint");
CommandEnumOptions.add("OnNotConditionNextWaypoint");
CommandEnumOptions.add("OnConditionJumpWaypoint");
CommandEnumOptions.add("OnNotConditionJumpWaypoint");
CommandEnumOptions.add("IfConditionJumpWaypointElseNextWaypoint");
fields.add( new UAVObjectField("Command", "", UAVObjectField.FieldType.ENUM, CommandElemNames, CommandEnumOptions) );
List<String> JumpDestinationElemNames = new ArrayList<String>();
JumpDestinationElemNames.add("0");
fields.add( new UAVObjectField("JumpDestination", "waypoint", UAVObjectField.FieldType.UINT8, JumpDestinationElemNames, null) );
List<String> ErrorDestinationElemNames = new ArrayList<String>();
ErrorDestinationElemNames.add("0");
fields.add( new UAVObjectField("ErrorDestination", "waypoint", UAVObjectField.FieldType.UINT8, ErrorDestinationElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 4000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
PathAction obj = new PathAction();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public PathAction GetInstance(UAVObjectManager objMngr, long instID)
{
return (PathAction)(objMngr.getObject(PathAction.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x34595F1Cl;
protected static final String NAME = "PathAction";
protected static String DESCRIPTION = "A waypoint command the pathplanner is to use at a certain waypoint";
protected static final boolean ISSINGLEINST = 0 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,162 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The endpoint or path the craft is trying to achieve. Can come from @ref ManualControl or @ref PathPlanner
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The endpoint or path the craft is trying to achieve. Can come from @ref ManualControl or @ref PathPlanner
generated from pathdesired.xml
**/
public class PathDesired extends UAVDataObject {
public PathDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> StartElemNames = new ArrayList<String>();
StartElemNames.add("North");
StartElemNames.add("East");
StartElemNames.add("Down");
fields.add( new UAVObjectField("Start", "m", UAVObjectField.FieldType.FLOAT32, StartElemNames, null) );
List<String> EndElemNames = new ArrayList<String>();
EndElemNames.add("North");
EndElemNames.add("East");
EndElemNames.add("Down");
fields.add( new UAVObjectField("End", "m", UAVObjectField.FieldType.FLOAT32, EndElemNames, null) );
List<String> StartingVelocityElemNames = new ArrayList<String>();
StartingVelocityElemNames.add("0");
fields.add( new UAVObjectField("StartingVelocity", "m/s", UAVObjectField.FieldType.FLOAT32, StartingVelocityElemNames, null) );
List<String> EndingVelocityElemNames = new ArrayList<String>();
EndingVelocityElemNames.add("0");
fields.add( new UAVObjectField("EndingVelocity", "m/s", UAVObjectField.FieldType.FLOAT32, EndingVelocityElemNames, null) );
List<String> ModeElemNames = new ArrayList<String>();
ModeElemNames.add("0");
List<String> ModeEnumOptions = new ArrayList<String>();
ModeEnumOptions.add("Endpoint");
ModeEnumOptions.add("Path");
ModeEnumOptions.add("Land");
fields.add( new UAVObjectField("Mode", "", UAVObjectField.FieldType.ENUM, ModeElemNames, ModeEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
PathDesired obj = new PathDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public PathDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (PathDesired)(objMngr.getObject(PathDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x5A4DC71Al;
protected static final String NAME = "PathDesired";
protected static String DESCRIPTION = "The endpoint or path the craft is trying to achieve. Can come from @ref ManualControl or @ref PathPlanner ";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,151 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref PathPlanner Module
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref PathPlanner Module
generated from pathplannersettings.xml
**/
public class PathPlannerSettings extends UAVDataObject {
public PathPlannerSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> PathModeElemNames = new ArrayList<String>();
PathModeElemNames.add("0");
List<String> PathModeEnumOptions = new ArrayList<String>();
PathModeEnumOptions.add("ENDPOINT");
PathModeEnumOptions.add("PATH");
fields.add( new UAVObjectField("PathMode", "", UAVObjectField.FieldType.ENUM, PathModeElemNames, PathModeEnumOptions) );
List<String> PreprogrammedPathElemNames = new ArrayList<String>();
PreprogrammedPathElemNames.add("0");
List<String> PreprogrammedPathEnumOptions = new ArrayList<String>();
PreprogrammedPathEnumOptions.add("NONE");
PreprogrammedPathEnumOptions.add("10M_BOX");
PreprogrammedPathEnumOptions.add("LOGO");
fields.add( new UAVObjectField("PreprogrammedPath", "", UAVObjectField.FieldType.ENUM, PreprogrammedPathElemNames, PreprogrammedPathEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("PathMode").setValue("PATH");
getField("PreprogrammedPath").setValue("NONE");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
PathPlannerSettings obj = new PathPlannerSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public PathPlannerSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (PathPlannerSettings)(objMngr.getObject(PathPlannerSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x290E45DAl;
protected static final String NAME = "PathPlannerSettings";
protected static String DESCRIPTION = "Settings for the @ref PathPlanner Module";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,326 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* PipXtreme configurations options.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
PipXtreme configurations options.
generated from pipxsettings.xml
**/
public class PipXSettings extends UAVDataObject {
public PipXSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> PairIDElemNames = new ArrayList<String>();
PairIDElemNames.add("0");
fields.add( new UAVObjectField("PairID", "", UAVObjectField.FieldType.UINT32, PairIDElemNames, null) );
List<String> FrequencyElemNames = new ArrayList<String>();
FrequencyElemNames.add("0");
fields.add( new UAVObjectField("Frequency", "", UAVObjectField.FieldType.UINT32, FrequencyElemNames, null) );
List<String> SendTimeoutElemNames = new ArrayList<String>();
SendTimeoutElemNames.add("0");
fields.add( new UAVObjectField("SendTimeout", "ms", UAVObjectField.FieldType.UINT16, SendTimeoutElemNames, null) );
List<String> TelemetryConfigElemNames = new ArrayList<String>();
TelemetryConfigElemNames.add("0");
List<String> TelemetryConfigEnumOptions = new ArrayList<String>();
TelemetryConfigEnumOptions.add("Disabled");
TelemetryConfigEnumOptions.add("Serial");
TelemetryConfigEnumOptions.add("UAVTalk");
TelemetryConfigEnumOptions.add("GCS");
TelemetryConfigEnumOptions.add("Debug");
fields.add( new UAVObjectField("TelemetryConfig", "function", UAVObjectField.FieldType.ENUM, TelemetryConfigElemNames, TelemetryConfigEnumOptions) );
List<String> TelemetrySpeedElemNames = new ArrayList<String>();
TelemetrySpeedElemNames.add("0");
List<String> TelemetrySpeedEnumOptions = new ArrayList<String>();
TelemetrySpeedEnumOptions.add("2400");
TelemetrySpeedEnumOptions.add("4800");
TelemetrySpeedEnumOptions.add("9600");
TelemetrySpeedEnumOptions.add("19200");
TelemetrySpeedEnumOptions.add("38400");
TelemetrySpeedEnumOptions.add("57600");
TelemetrySpeedEnumOptions.add("115200");
fields.add( new UAVObjectField("TelemetrySpeed", "bps", UAVObjectField.FieldType.ENUM, TelemetrySpeedElemNames, TelemetrySpeedEnumOptions) );
List<String> FlexiConfigElemNames = new ArrayList<String>();
FlexiConfigElemNames.add("0");
List<String> FlexiConfigEnumOptions = new ArrayList<String>();
FlexiConfigEnumOptions.add("Disabled");
FlexiConfigEnumOptions.add("Serial");
FlexiConfigEnumOptions.add("UAVTalk");
FlexiConfigEnumOptions.add("GCS");
FlexiConfigEnumOptions.add("PPM_In");
FlexiConfigEnumOptions.add("PPM_Out");
FlexiConfigEnumOptions.add("RSSI");
FlexiConfigEnumOptions.add("Debug");
fields.add( new UAVObjectField("FlexiConfig", "function", UAVObjectField.FieldType.ENUM, FlexiConfigElemNames, FlexiConfigEnumOptions) );
List<String> FlexiSpeedElemNames = new ArrayList<String>();
FlexiSpeedElemNames.add("0");
List<String> FlexiSpeedEnumOptions = new ArrayList<String>();
FlexiSpeedEnumOptions.add("2400");
FlexiSpeedEnumOptions.add("4800");
FlexiSpeedEnumOptions.add("9600");
FlexiSpeedEnumOptions.add("19200");
FlexiSpeedEnumOptions.add("38400");
FlexiSpeedEnumOptions.add("57600");
FlexiSpeedEnumOptions.add("115200");
fields.add( new UAVObjectField("FlexiSpeed", "bps", UAVObjectField.FieldType.ENUM, FlexiSpeedElemNames, FlexiSpeedEnumOptions) );
List<String> VCPConfigElemNames = new ArrayList<String>();
VCPConfigElemNames.add("0");
List<String> VCPConfigEnumOptions = new ArrayList<String>();
VCPConfigEnumOptions.add("Disabled");
VCPConfigEnumOptions.add("Serial");
VCPConfigEnumOptions.add("Debug");
fields.add( new UAVObjectField("VCPConfig", "function", UAVObjectField.FieldType.ENUM, VCPConfigElemNames, VCPConfigEnumOptions) );
List<String> VCPSpeedElemNames = new ArrayList<String>();
VCPSpeedElemNames.add("0");
List<String> VCPSpeedEnumOptions = new ArrayList<String>();
VCPSpeedEnumOptions.add("2400");
VCPSpeedEnumOptions.add("4800");
VCPSpeedEnumOptions.add("9600");
VCPSpeedEnumOptions.add("19200");
VCPSpeedEnumOptions.add("38400");
VCPSpeedEnumOptions.add("57600");
VCPSpeedEnumOptions.add("115200");
fields.add( new UAVObjectField("VCPSpeed", "bps", UAVObjectField.FieldType.ENUM, VCPSpeedElemNames, VCPSpeedEnumOptions) );
List<String> RFSpeedElemNames = new ArrayList<String>();
RFSpeedElemNames.add("0");
List<String> RFSpeedEnumOptions = new ArrayList<String>();
RFSpeedEnumOptions.add("2400");
RFSpeedEnumOptions.add("4800");
RFSpeedEnumOptions.add("9600");
RFSpeedEnumOptions.add("19200");
RFSpeedEnumOptions.add("38400");
RFSpeedEnumOptions.add("57600");
RFSpeedEnumOptions.add("115200");
fields.add( new UAVObjectField("RFSpeed", "bps", UAVObjectField.FieldType.ENUM, RFSpeedElemNames, RFSpeedEnumOptions) );
List<String> MaxRFPowerElemNames = new ArrayList<String>();
MaxRFPowerElemNames.add("0");
List<String> MaxRFPowerEnumOptions = new ArrayList<String>();
MaxRFPowerEnumOptions.add("1.25");
MaxRFPowerEnumOptions.add("1.6");
MaxRFPowerEnumOptions.add("3.16");
MaxRFPowerEnumOptions.add("6.3");
MaxRFPowerEnumOptions.add("12.6");
MaxRFPowerEnumOptions.add("25");
MaxRFPowerEnumOptions.add("50");
MaxRFPowerEnumOptions.add("100");
fields.add( new UAVObjectField("MaxRFPower", "mW", UAVObjectField.FieldType.ENUM, MaxRFPowerElemNames, MaxRFPowerEnumOptions) );
List<String> MinPacketSizeElemNames = new ArrayList<String>();
MinPacketSizeElemNames.add("0");
fields.add( new UAVObjectField("MinPacketSize", "bytes", UAVObjectField.FieldType.UINT8, MinPacketSizeElemNames, null) );
List<String> FrequencyCalibrationElemNames = new ArrayList<String>();
FrequencyCalibrationElemNames.add("0");
fields.add( new UAVObjectField("FrequencyCalibration", "", UAVObjectField.FieldType.UINT8, FrequencyCalibrationElemNames, null) );
List<String> AESKeyElemNames = new ArrayList<String>();
AESKeyElemNames.add("0");
AESKeyElemNames.add("1");
AESKeyElemNames.add("2");
AESKeyElemNames.add("3");
AESKeyElemNames.add("4");
AESKeyElemNames.add("5");
AESKeyElemNames.add("6");
AESKeyElemNames.add("7");
AESKeyElemNames.add("8");
AESKeyElemNames.add("9");
AESKeyElemNames.add("10");
AESKeyElemNames.add("11");
AESKeyElemNames.add("12");
AESKeyElemNames.add("13");
AESKeyElemNames.add("14");
AESKeyElemNames.add("15");
AESKeyElemNames.add("16");
AESKeyElemNames.add("17");
AESKeyElemNames.add("18");
AESKeyElemNames.add("19");
AESKeyElemNames.add("20");
AESKeyElemNames.add("21");
AESKeyElemNames.add("22");
AESKeyElemNames.add("23");
AESKeyElemNames.add("24");
AESKeyElemNames.add("25");
AESKeyElemNames.add("26");
AESKeyElemNames.add("27");
AESKeyElemNames.add("28");
AESKeyElemNames.add("29");
AESKeyElemNames.add("30");
AESKeyElemNames.add("31");
fields.add( new UAVObjectField("AESKey", "", UAVObjectField.FieldType.UINT8, AESKeyElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("PairID").setValue(0);
getField("Frequency").setValue(434000000);
getField("SendTimeout").setValue(50);
getField("TelemetryConfig").setValue("UAVTalk");
getField("TelemetrySpeed").setValue("57600");
getField("FlexiConfig").setValue("Disabled");
getField("FlexiSpeed").setValue("57600");
getField("VCPConfig").setValue("Disabled");
getField("VCPSpeed").setValue("57600");
getField("RFSpeed").setValue("115200");
getField("MaxRFPower").setValue("100");
getField("MinPacketSize").setValue(50);
getField("FrequencyCalibration").setValue(127);
getField("AESKey").setValue(0,0);
getField("AESKey").setValue(0,1);
getField("AESKey").setValue(0,2);
getField("AESKey").setValue(0,3);
getField("AESKey").setValue(0,4);
getField("AESKey").setValue(0,5);
getField("AESKey").setValue(0,6);
getField("AESKey").setValue(0,7);
getField("AESKey").setValue(0,8);
getField("AESKey").setValue(0,9);
getField("AESKey").setValue(0,10);
getField("AESKey").setValue(0,11);
getField("AESKey").setValue(0,12);
getField("AESKey").setValue(0,13);
getField("AESKey").setValue(0,14);
getField("AESKey").setValue(0,15);
getField("AESKey").setValue(0,16);
getField("AESKey").setValue(0,17);
getField("AESKey").setValue(0,18);
getField("AESKey").setValue(0,19);
getField("AESKey").setValue(0,20);
getField("AESKey").setValue(0,21);
getField("AESKey").setValue(0,22);
getField("AESKey").setValue(0,23);
getField("AESKey").setValue(0,24);
getField("AESKey").setValue(0,25);
getField("AESKey").setValue(0,26);
getField("AESKey").setValue(0,27);
getField("AESKey").setValue(0,28);
getField("AESKey").setValue(0,29);
getField("AESKey").setValue(0,30);
getField("AESKey").setValue(0,31);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
PipXSettings obj = new PipXSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public PipXSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (PipXSettings)(objMngr.getObject(PipXSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xBA192BCAl;
protected static final String NAME = "PipXSettings";
protected static String DESCRIPTION = "PipXtreme configurations options.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,301 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* PipXtreme device status.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
PipXtreme device status.
generated from pipxstatus.xml
**/
public class PipXStatus extends UAVDataObject {
public PipXStatus() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> MinFrequencyElemNames = new ArrayList<String>();
MinFrequencyElemNames.add("0");
fields.add( new UAVObjectField("MinFrequency", "Hz", UAVObjectField.FieldType.UINT32, MinFrequencyElemNames, null) );
List<String> MaxFrequencyElemNames = new ArrayList<String>();
MaxFrequencyElemNames.add("0");
fields.add( new UAVObjectField("MaxFrequency", "Hz", UAVObjectField.FieldType.UINT32, MaxFrequencyElemNames, null) );
List<String> FrequencyStepSizeElemNames = new ArrayList<String>();
FrequencyStepSizeElemNames.add("0");
fields.add( new UAVObjectField("FrequencyStepSize", "", UAVObjectField.FieldType.FLOAT32, FrequencyStepSizeElemNames, null) );
List<String> DeviceIDElemNames = new ArrayList<String>();
DeviceIDElemNames.add("0");
fields.add( new UAVObjectField("DeviceID", "", UAVObjectField.FieldType.UINT32, DeviceIDElemNames, null) );
List<String> AFCElemNames = new ArrayList<String>();
AFCElemNames.add("0");
fields.add( new UAVObjectField("AFC", "", UAVObjectField.FieldType.INT32, AFCElemNames, null) );
List<String> PairIDsElemNames = new ArrayList<String>();
PairIDsElemNames.add("0");
PairIDsElemNames.add("1");
PairIDsElemNames.add("2");
PairIDsElemNames.add("3");
fields.add( new UAVObjectField("PairIDs", "", UAVObjectField.FieldType.UINT32, PairIDsElemNames, null) );
List<String> BoardRevisionElemNames = new ArrayList<String>();
BoardRevisionElemNames.add("0");
fields.add( new UAVObjectField("BoardRevision", "", UAVObjectField.FieldType.UINT16, BoardRevisionElemNames, null) );
List<String> RetriesElemNames = new ArrayList<String>();
RetriesElemNames.add("0");
fields.add( new UAVObjectField("Retries", "", UAVObjectField.FieldType.UINT16, RetriesElemNames, null) );
List<String> ErrorsElemNames = new ArrayList<String>();
ErrorsElemNames.add("0");
fields.add( new UAVObjectField("Errors", "", UAVObjectField.FieldType.UINT16, ErrorsElemNames, null) );
List<String> UAVTalkErrorsElemNames = new ArrayList<String>();
UAVTalkErrorsElemNames.add("0");
fields.add( new UAVObjectField("UAVTalkErrors", "", UAVObjectField.FieldType.UINT16, UAVTalkErrorsElemNames, null) );
List<String> DroppedElemNames = new ArrayList<String>();
DroppedElemNames.add("0");
fields.add( new UAVObjectField("Dropped", "", UAVObjectField.FieldType.UINT16, DroppedElemNames, null) );
List<String> ResetsElemNames = new ArrayList<String>();
ResetsElemNames.add("0");
fields.add( new UAVObjectField("Resets", "", UAVObjectField.FieldType.UINT16, ResetsElemNames, null) );
List<String> TXRateElemNames = new ArrayList<String>();
TXRateElemNames.add("0");
fields.add( new UAVObjectField("TXRate", "Bps", UAVObjectField.FieldType.UINT16, TXRateElemNames, null) );
List<String> RXRateElemNames = new ArrayList<String>();
RXRateElemNames.add("0");
fields.add( new UAVObjectField("RXRate", "Bps", UAVObjectField.FieldType.UINT16, RXRateElemNames, null) );
List<String> DescriptionElemNames = new ArrayList<String>();
DescriptionElemNames.add("0");
DescriptionElemNames.add("1");
DescriptionElemNames.add("2");
DescriptionElemNames.add("3");
DescriptionElemNames.add("4");
DescriptionElemNames.add("5");
DescriptionElemNames.add("6");
DescriptionElemNames.add("7");
DescriptionElemNames.add("8");
DescriptionElemNames.add("9");
DescriptionElemNames.add("10");
DescriptionElemNames.add("11");
DescriptionElemNames.add("12");
DescriptionElemNames.add("13");
DescriptionElemNames.add("14");
DescriptionElemNames.add("15");
DescriptionElemNames.add("16");
DescriptionElemNames.add("17");
DescriptionElemNames.add("18");
DescriptionElemNames.add("19");
DescriptionElemNames.add("20");
DescriptionElemNames.add("21");
DescriptionElemNames.add("22");
DescriptionElemNames.add("23");
DescriptionElemNames.add("24");
DescriptionElemNames.add("25");
DescriptionElemNames.add("26");
DescriptionElemNames.add("27");
DescriptionElemNames.add("28");
DescriptionElemNames.add("29");
DescriptionElemNames.add("30");
DescriptionElemNames.add("31");
DescriptionElemNames.add("32");
DescriptionElemNames.add("33");
DescriptionElemNames.add("34");
DescriptionElemNames.add("35");
DescriptionElemNames.add("36");
DescriptionElemNames.add("37");
DescriptionElemNames.add("38");
DescriptionElemNames.add("39");
fields.add( new UAVObjectField("Description", "", UAVObjectField.FieldType.UINT8, DescriptionElemNames, null) );
List<String> CPUSerialElemNames = new ArrayList<String>();
CPUSerialElemNames.add("0");
CPUSerialElemNames.add("1");
CPUSerialElemNames.add("2");
CPUSerialElemNames.add("3");
CPUSerialElemNames.add("4");
CPUSerialElemNames.add("5");
CPUSerialElemNames.add("6");
CPUSerialElemNames.add("7");
CPUSerialElemNames.add("8");
CPUSerialElemNames.add("9");
CPUSerialElemNames.add("10");
CPUSerialElemNames.add("11");
fields.add( new UAVObjectField("CPUSerial", "", UAVObjectField.FieldType.UINT8, CPUSerialElemNames, null) );
List<String> BoardTypeElemNames = new ArrayList<String>();
BoardTypeElemNames.add("0");
fields.add( new UAVObjectField("BoardType", "", UAVObjectField.FieldType.UINT8, BoardTypeElemNames, null) );
List<String> FrequencyBandElemNames = new ArrayList<String>();
FrequencyBandElemNames.add("0");
fields.add( new UAVObjectField("FrequencyBand", "", UAVObjectField.FieldType.UINT8, FrequencyBandElemNames, null) );
List<String> RSSIElemNames = new ArrayList<String>();
RSSIElemNames.add("0");
fields.add( new UAVObjectField("RSSI", "dBm", UAVObjectField.FieldType.INT8, RSSIElemNames, null) );
List<String> LinkStateElemNames = new ArrayList<String>();
LinkStateElemNames.add("0");
List<String> LinkStateEnumOptions = new ArrayList<String>();
LinkStateEnumOptions.add("Disconnected");
LinkStateEnumOptions.add("Connecting");
LinkStateEnumOptions.add("Connected");
fields.add( new UAVObjectField("LinkState", "function", UAVObjectField.FieldType.ENUM, LinkStateElemNames, LinkStateEnumOptions) );
List<String> PairSignalStrengthsElemNames = new ArrayList<String>();
PairSignalStrengthsElemNames.add("0");
PairSignalStrengthsElemNames.add("1");
PairSignalStrengthsElemNames.add("2");
PairSignalStrengthsElemNames.add("3");
fields.add( new UAVObjectField("PairSignalStrengths", "dBm", UAVObjectField.FieldType.INT8, PairSignalStrengthsElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READONLY) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("MinFrequency").setValue(0);
getField("MaxFrequency").setValue(0);
getField("FrequencyStepSize").setValue(0);
getField("DeviceID").setValue(0);
getField("AFC").setValue(0);
getField("PairIDs").setValue(0,0);
getField("PairIDs").setValue(0,1);
getField("PairIDs").setValue(0,2);
getField("PairIDs").setValue(0,3);
getField("Retries").setValue(0);
getField("Errors").setValue(0);
getField("UAVTalkErrors").setValue(0);
getField("Dropped").setValue(0);
getField("Resets").setValue(0);
getField("TXRate").setValue(0);
getField("RXRate").setValue(0);
getField("FrequencyBand").setValue(0);
getField("RSSI").setValue(0);
getField("LinkState").setValue("Disconnected");
getField("PairSignalStrengths").setValue(-127,0);
getField("PairSignalStrengths").setValue(-127,1);
getField("PairSignalStrengths").setValue(-127,2);
getField("PairSignalStrengths").setValue(-127,3);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
PipXStatus obj = new PipXStatus();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public PipXStatus GetInstance(UAVObjectManager objMngr, long instID)
{
return (PipXStatus)(objMngr.getObject(PipXStatus.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x3FC68A86l;
protected static final String NAME = "PipXStatus";
protected static String DESCRIPTION = "PipXtreme device status.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Contains the current position relative to @ref HomeLocation
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Contains the current position relative to @ref HomeLocation
generated from positionactual.xml
**/
public class PositionActual extends UAVDataObject {
public PositionActual() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> NorthElemNames = new ArrayList<String>();
NorthElemNames.add("0");
fields.add( new UAVObjectField("North", "m", UAVObjectField.FieldType.FLOAT32, NorthElemNames, null) );
List<String> EastElemNames = new ArrayList<String>();
EastElemNames.add("0");
fields.add( new UAVObjectField("East", "m", UAVObjectField.FieldType.FLOAT32, EastElemNames, null) );
List<String> DownElemNames = new ArrayList<String>();
DownElemNames.add("0");
fields.add( new UAVObjectField("Down", "m", UAVObjectField.FieldType.FLOAT32, DownElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
PositionActual obj = new PositionActual();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public PositionActual GetInstance(UAVObjectManager objMngr, long instID)
{
return (PositionActual)(objMngr.getObject(PositionActual.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xFA9E2D42l;
protected static final String NAME = "PositionActual";
protected static String DESCRIPTION = "Contains the current position relative to @ref HomeLocation";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The position the craft is trying t achieve. Can come from GCS or @ref PathPlanner
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The position the craft is trying t achieve. Can come from GCS or @ref PathPlanner
generated from positiondesired.xml
**/
public class PositionDesired extends UAVDataObject {
public PositionDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> NorthElemNames = new ArrayList<String>();
NorthElemNames.add("0");
fields.add( new UAVObjectField("North", "m", UAVObjectField.FieldType.FLOAT32, NorthElemNames, null) );
List<String> EastElemNames = new ArrayList<String>();
EastElemNames.add("0");
fields.add( new UAVObjectField("East", "m", UAVObjectField.FieldType.FLOAT32, EastElemNames, null) );
List<String> DownElemNames = new ArrayList<String>();
DownElemNames.add("0");
fields.add( new UAVObjectField("Down", "m", UAVObjectField.FieldType.FLOAT32, DownElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
PositionDesired obj = new PositionDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public PositionDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (PositionDesired)(objMngr.getObject(PositionDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x778DBE24l;
protected static final String NAME = "PositionDesired";
protected static String DESCRIPTION = "The position the craft is trying t achieve. Can come from GCS or @ref PathPlanner ";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Status for the matrix mixer showing the output of each mixer after all scaling
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Status for the matrix mixer showing the output of each mixer after all scaling
generated from ratedesired.xml
**/
public class RateDesired extends UAVDataObject {
public RateDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> RollElemNames = new ArrayList<String>();
RollElemNames.add("0");
fields.add( new UAVObjectField("Roll", "deg/s", UAVObjectField.FieldType.FLOAT32, RollElemNames, null) );
List<String> PitchElemNames = new ArrayList<String>();
PitchElemNames.add("0");
fields.add( new UAVObjectField("Pitch", "deg/s", UAVObjectField.FieldType.FLOAT32, PitchElemNames, null) );
List<String> YawElemNames = new ArrayList<String>();
YawElemNames.add("0");
fields.add( new UAVObjectField("Yaw", "deg/s", UAVObjectField.FieldType.FLOAT32, YawElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
RateDesired obj = new RateDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public RateDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (RateDesired)(objMngr.getObject(RateDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xCE8C826l;
protected static final String NAME = "RateDesired";
protected static String DESCRIPTION = "Status for the matrix mixer showing the output of each mixer after all scaling";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,152 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Monitors which receiver channels have been active within the last second.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Monitors which receiver channels have been active within the last second.
generated from receiveractivity.xml
**/
public class ReceiverActivity extends UAVDataObject {
public ReceiverActivity() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ActiveGroupElemNames = new ArrayList<String>();
ActiveGroupElemNames.add("0");
List<String> ActiveGroupEnumOptions = new ArrayList<String>();
ActiveGroupEnumOptions.add("PWM");
ActiveGroupEnumOptions.add("PPM");
ActiveGroupEnumOptions.add("DSM (MainPort)");
ActiveGroupEnumOptions.add("DSM (FlexiPort)");
ActiveGroupEnumOptions.add("S.Bus");
ActiveGroupEnumOptions.add("GCS");
ActiveGroupEnumOptions.add("None");
fields.add( new UAVObjectField("ActiveGroup", "Channel Group", UAVObjectField.FieldType.ENUM, ActiveGroupElemNames, ActiveGroupEnumOptions) );
List<String> ActiveChannelElemNames = new ArrayList<String>();
ActiveChannelElemNames.add("0");
fields.add( new UAVObjectField("ActiveChannel", "channel", UAVObjectField.FieldType.UINT8, ActiveChannelElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READONLY) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("ActiveGroup").setValue("None");
getField("ActiveChannel").setValue(255);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
ReceiverActivity obj = new ReceiverActivity();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public ReceiverActivity GetInstance(UAVObjectManager objMngr, long instID)
{
return (ReceiverActivity)(objMngr.getObject(ReceiverActivity.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x1E7C53DAl;
protected static final String NAME = "ReceiverActivity";
protected static String DESCRIPTION = "Monitors which receiver channels have been active within the last second.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The input to the relay tuning.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The input to the relay tuning.
generated from relaytuning.xml
**/
public class RelayTuning extends UAVDataObject {
public RelayTuning() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> PeriodElemNames = new ArrayList<String>();
PeriodElemNames.add("Roll");
PeriodElemNames.add("Pitch");
PeriodElemNames.add("Yaw");
fields.add( new UAVObjectField("Period", "ms", UAVObjectField.FieldType.FLOAT32, PeriodElemNames, null) );
List<String> GainElemNames = new ArrayList<String>();
GainElemNames.add("Roll");
GainElemNames.add("Pitch");
GainElemNames.add("Yaw");
fields.add( new UAVObjectField("Gain", "(deg/s)/output", UAVObjectField.FieldType.FLOAT32, GainElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
RelayTuning obj = new RelayTuning();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public RelayTuning GetInstance(UAVObjectManager objMngr, long instID)
{
return (RelayTuning)(objMngr.getObject(RelayTuning.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xF6EE61BEl;
protected static final String NAME = "RelayTuning";
protected static String DESCRIPTION = "The input to the relay tuning.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,171 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Setting to run a relay tuning algorithm
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Setting to run a relay tuning algorithm
generated from relaytuningsettings.xml
**/
public class RelayTuningSettings extends UAVDataObject {
public RelayTuningSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> RateGainElemNames = new ArrayList<String>();
RateGainElemNames.add("0");
fields.add( new UAVObjectField("RateGain", "", UAVObjectField.FieldType.FLOAT32, RateGainElemNames, null) );
List<String> AttitudeGainElemNames = new ArrayList<String>();
AttitudeGainElemNames.add("0");
fields.add( new UAVObjectField("AttitudeGain", "", UAVObjectField.FieldType.FLOAT32, AttitudeGainElemNames, null) );
List<String> AmplitudeElemNames = new ArrayList<String>();
AmplitudeElemNames.add("0");
fields.add( new UAVObjectField("Amplitude", "", UAVObjectField.FieldType.FLOAT32, AmplitudeElemNames, null) );
List<String> HysteresisThreshElemNames = new ArrayList<String>();
HysteresisThreshElemNames.add("0");
fields.add( new UAVObjectField("HysteresisThresh", "deg/s", UAVObjectField.FieldType.UINT8, HysteresisThreshElemNames, null) );
List<String> ModeElemNames = new ArrayList<String>();
ModeElemNames.add("0");
List<String> ModeEnumOptions = new ArrayList<String>();
ModeEnumOptions.add("Rate");
ModeEnumOptions.add("Attitude");
fields.add( new UAVObjectField("Mode", "", UAVObjectField.FieldType.ENUM, ModeElemNames, ModeEnumOptions) );
List<String> BehaviorElemNames = new ArrayList<String>();
BehaviorElemNames.add("0");
List<String> BehaviorEnumOptions = new ArrayList<String>();
BehaviorEnumOptions.add("Measure");
BehaviorEnumOptions.add("Compute");
BehaviorEnumOptions.add("Save");
fields.add( new UAVObjectField("Behavior", "", UAVObjectField.FieldType.ENUM, BehaviorElemNames, BehaviorEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("RateGain").setValue(0.3333);
getField("AttitudeGain").setValue(0.2);
getField("Amplitude").setValue(0.25);
getField("HysteresisThresh").setValue(5);
getField("Mode").setValue("Attitude");
getField("Behavior").setValue("Compute");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
RelayTuningSettings obj = new RelayTuningSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public RelayTuningSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (RelayTuningSettings)(objMngr.getObject(RelayTuningSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xEA358166l;
protected static final String NAME = "RelayTuningSettings";
protected static String DESCRIPTION = "Setting to run a relay tuning algorithm";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,232 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the INS to control the algorithm and what is updated
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the INS to control the algorithm and what is updated
generated from revocalibration.xml
**/
public class RevoCalibration extends UAVDataObject {
public RevoCalibration() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> accel_biasElemNames = new ArrayList<String>();
accel_biasElemNames.add("X");
accel_biasElemNames.add("Y");
accel_biasElemNames.add("Z");
fields.add( new UAVObjectField("accel_bias", "m/s", UAVObjectField.FieldType.FLOAT32, accel_biasElemNames, null) );
List<String> accel_scaleElemNames = new ArrayList<String>();
accel_scaleElemNames.add("X");
accel_scaleElemNames.add("Y");
accel_scaleElemNames.add("Z");
fields.add( new UAVObjectField("accel_scale", "gain", UAVObjectField.FieldType.FLOAT32, accel_scaleElemNames, null) );
List<String> accel_varElemNames = new ArrayList<String>();
accel_varElemNames.add("X");
accel_varElemNames.add("Y");
accel_varElemNames.add("Z");
fields.add( new UAVObjectField("accel_var", "(m/s)^2", UAVObjectField.FieldType.FLOAT32, accel_varElemNames, null) );
List<String> gyro_biasElemNames = new ArrayList<String>();
gyro_biasElemNames.add("X");
gyro_biasElemNames.add("Y");
gyro_biasElemNames.add("Z");
fields.add( new UAVObjectField("gyro_bias", "deg/s", UAVObjectField.FieldType.FLOAT32, gyro_biasElemNames, null) );
List<String> gyro_scaleElemNames = new ArrayList<String>();
gyro_scaleElemNames.add("X");
gyro_scaleElemNames.add("Y");
gyro_scaleElemNames.add("Z");
fields.add( new UAVObjectField("gyro_scale", "gain", UAVObjectField.FieldType.FLOAT32, gyro_scaleElemNames, null) );
List<String> gyro_varElemNames = new ArrayList<String>();
gyro_varElemNames.add("X");
gyro_varElemNames.add("Y");
gyro_varElemNames.add("Z");
fields.add( new UAVObjectField("gyro_var", "(deg/s)^2", UAVObjectField.FieldType.FLOAT32, gyro_varElemNames, null) );
List<String> gyro_tempcoeffElemNames = new ArrayList<String>();
gyro_tempcoeffElemNames.add("X");
gyro_tempcoeffElemNames.add("Y");
gyro_tempcoeffElemNames.add("Z");
fields.add( new UAVObjectField("gyro_tempcoeff", "(deg/s)/deg", UAVObjectField.FieldType.FLOAT32, gyro_tempcoeffElemNames, null) );
List<String> mag_biasElemNames = new ArrayList<String>();
mag_biasElemNames.add("X");
mag_biasElemNames.add("Y");
mag_biasElemNames.add("Z");
fields.add( new UAVObjectField("mag_bias", "mGau", UAVObjectField.FieldType.FLOAT32, mag_biasElemNames, null) );
List<String> mag_scaleElemNames = new ArrayList<String>();
mag_scaleElemNames.add("X");
mag_scaleElemNames.add("Y");
mag_scaleElemNames.add("Z");
fields.add( new UAVObjectField("mag_scale", "gain", UAVObjectField.FieldType.FLOAT32, mag_scaleElemNames, null) );
List<String> mag_varElemNames = new ArrayList<String>();
mag_varElemNames.add("X");
mag_varElemNames.add("Y");
mag_varElemNames.add("Z");
fields.add( new UAVObjectField("mag_var", "mGau^2", UAVObjectField.FieldType.FLOAT32, mag_varElemNames, null) );
List<String> BiasCorrectedRawElemNames = new ArrayList<String>();
BiasCorrectedRawElemNames.add("0");
List<String> BiasCorrectedRawEnumOptions = new ArrayList<String>();
BiasCorrectedRawEnumOptions.add("TRUE");
BiasCorrectedRawEnumOptions.add("FALSE");
fields.add( new UAVObjectField("BiasCorrectedRaw", "", UAVObjectField.FieldType.ENUM, BiasCorrectedRawElemNames, BiasCorrectedRawEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("accel_bias").setValue(0,0);
getField("accel_bias").setValue(0,1);
getField("accel_bias").setValue(0,2);
getField("accel_scale").setValue(1,0);
getField("accel_scale").setValue(1,1);
getField("accel_scale").setValue(1,2);
getField("accel_var").setValue(1,0);
getField("accel_var").setValue(1,1);
getField("accel_var").setValue(1,2);
getField("gyro_bias").setValue(0,0);
getField("gyro_bias").setValue(0,1);
getField("gyro_bias").setValue(0,2);
getField("gyro_scale").setValue(1,0);
getField("gyro_scale").setValue(1,1);
getField("gyro_scale").setValue(1,2);
getField("gyro_var").setValue(1,0);
getField("gyro_var").setValue(1,1);
getField("gyro_var").setValue(1,2);
getField("gyro_tempcoeff").setValue(1,0);
getField("gyro_tempcoeff").setValue(1,1);
getField("gyro_tempcoeff").setValue(1,2);
getField("mag_bias").setValue(0,0);
getField("mag_bias").setValue(0,1);
getField("mag_bias").setValue(0,2);
getField("mag_scale").setValue(1,0);
getField("mag_scale").setValue(1,1);
getField("mag_scale").setValue(1,2);
getField("mag_var").setValue(50,0);
getField("mag_var").setValue(50,1);
getField("mag_var").setValue(50,2);
getField("BiasCorrectedRaw").setValue("TRUE");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
RevoCalibration obj = new RevoCalibration();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public RevoCalibration GetInstance(UAVObjectManager objMngr, long instID)
{
return (RevoCalibration)(objMngr.getObject(RevoCalibration.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xC26D37B2l;
protected static final String NAME = "RevoCalibration";
protected static String DESCRIPTION = "Settings for the INS to control the algorithm and what is updated";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,143 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the revo to control the algorithm and what is updated
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the revo to control the algorithm and what is updated
generated from revosettings.xml
**/
public class RevoSettings extends UAVDataObject {
public RevoSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> FusionAlgorithmElemNames = new ArrayList<String>();
FusionAlgorithmElemNames.add("0");
List<String> FusionAlgorithmEnumOptions = new ArrayList<String>();
FusionAlgorithmEnumOptions.add("Complimentary");
FusionAlgorithmEnumOptions.add("INSIndoor");
FusionAlgorithmEnumOptions.add("INSOutdoor");
fields.add( new UAVObjectField("FusionAlgorithm", "", UAVObjectField.FieldType.ENUM, FusionAlgorithmElemNames, FusionAlgorithmEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("FusionAlgorithm").setValue("Complimentary");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
RevoSettings obj = new RevoSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public RevoSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (RevoSettings)(objMngr.getObject(RevoSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xE2DA70EAl;
protected static final String NAME = "RevoSettings";
protected static String DESCRIPTION = "Settings for the revo to control the algorithm and what is updated";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,138 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The raw data from the ultrasound sonar sensor with altitude estimate.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The raw data from the ultrasound sonar sensor with altitude estimate.
generated from sonaraltitude.xml
**/
public class SonarAltitude extends UAVDataObject {
public SonarAltitude() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> AltitudeElemNames = new ArrayList<String>();
AltitudeElemNames.add("0");
fields.add( new UAVObjectField("Altitude", "m", UAVObjectField.FieldType.FLOAT32, AltitudeElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
SonarAltitude obj = new SonarAltitude();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public SonarAltitude GetInstance(UAVObjectManager objMngr, long instID)
{
return (SonarAltitude)(objMngr.getObject(SonarAltitude.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x6C5A0CBCl;
protected static final String NAME = "SonarAltitude";
protected static String DESCRIPTION = "The raw data from the ultrasound sonar sensor with altitude estimate.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,165 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* The desired attitude that @ref StabilizationModule will try and achieve if FlightMode is Stabilized. Comes from @ref ManaulControlModule.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
The desired attitude that @ref StabilizationModule will try and achieve if FlightMode is Stabilized. Comes from @ref ManaulControlModule.
generated from stabilizationdesired.xml
**/
public class StabilizationDesired extends UAVDataObject {
public StabilizationDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> RollElemNames = new ArrayList<String>();
RollElemNames.add("0");
fields.add( new UAVObjectField("Roll", "degrees", UAVObjectField.FieldType.FLOAT32, RollElemNames, null) );
List<String> PitchElemNames = new ArrayList<String>();
PitchElemNames.add("0");
fields.add( new UAVObjectField("Pitch", "degrees", UAVObjectField.FieldType.FLOAT32, PitchElemNames, null) );
List<String> YawElemNames = new ArrayList<String>();
YawElemNames.add("0");
fields.add( new UAVObjectField("Yaw", "degrees", UAVObjectField.FieldType.FLOAT32, YawElemNames, null) );
List<String> ThrottleElemNames = new ArrayList<String>();
ThrottleElemNames.add("0");
fields.add( new UAVObjectField("Throttle", "%", UAVObjectField.FieldType.FLOAT32, ThrottleElemNames, null) );
List<String> StabilizationModeElemNames = new ArrayList<String>();
StabilizationModeElemNames.add("Roll");
StabilizationModeElemNames.add("Pitch");
StabilizationModeElemNames.add("Yaw");
List<String> StabilizationModeEnumOptions = new ArrayList<String>();
StabilizationModeEnumOptions.add("None");
StabilizationModeEnumOptions.add("Rate");
StabilizationModeEnumOptions.add("Attitude");
StabilizationModeEnumOptions.add("AxisLock");
StabilizationModeEnumOptions.add("WeakLeveling");
StabilizationModeEnumOptions.add("VirtualBar");
StabilizationModeEnumOptions.add("RelayRate");
StabilizationModeEnumOptions.add("RelayAttitude");
fields.add( new UAVObjectField("StabilizationMode", "", UAVObjectField.FieldType.ENUM, StabilizationModeElemNames, StabilizationModeEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
StabilizationDesired obj = new StabilizationDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public StabilizationDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (StabilizationDesired)(objMngr.getObject(StabilizationDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x4FDBFEEAl;
protected static final String NAME = "StabilizationDesired";
protected static String DESCRIPTION = "The desired attitude that @ref StabilizationModule will try and achieve if FlightMode is Stabilized. Comes from @ref ManaulControlModule.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,323 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* PID settings used by the Stabilization module to combine the @ref AttitudeActual and @ref AttitudeDesired to compute @ref ActuatorDesired
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
PID settings used by the Stabilization module to combine the @ref AttitudeActual and @ref AttitudeDesired to compute @ref ActuatorDesired
generated from stabilizationsettings.xml
**/
public class StabilizationSettings extends UAVDataObject {
public StabilizationSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ManualRateElemNames = new ArrayList<String>();
ManualRateElemNames.add("Roll");
ManualRateElemNames.add("Pitch");
ManualRateElemNames.add("Yaw");
fields.add( new UAVObjectField("ManualRate", "degrees/sec", UAVObjectField.FieldType.FLOAT32, ManualRateElemNames, null) );
List<String> MaximumRateElemNames = new ArrayList<String>();
MaximumRateElemNames.add("Roll");
MaximumRateElemNames.add("Pitch");
MaximumRateElemNames.add("Yaw");
fields.add( new UAVObjectField("MaximumRate", "degrees/sec", UAVObjectField.FieldType.FLOAT32, MaximumRateElemNames, null) );
List<String> RollRatePIDElemNames = new ArrayList<String>();
RollRatePIDElemNames.add("Kp");
RollRatePIDElemNames.add("Ki");
RollRatePIDElemNames.add("Kd");
RollRatePIDElemNames.add("ILimit");
fields.add( new UAVObjectField("RollRatePID", "", UAVObjectField.FieldType.FLOAT32, RollRatePIDElemNames, null) );
List<String> PitchRatePIDElemNames = new ArrayList<String>();
PitchRatePIDElemNames.add("Kp");
PitchRatePIDElemNames.add("Ki");
PitchRatePIDElemNames.add("Kd");
PitchRatePIDElemNames.add("ILimit");
fields.add( new UAVObjectField("PitchRatePID", "", UAVObjectField.FieldType.FLOAT32, PitchRatePIDElemNames, null) );
List<String> YawRatePIDElemNames = new ArrayList<String>();
YawRatePIDElemNames.add("Kp");
YawRatePIDElemNames.add("Ki");
YawRatePIDElemNames.add("Kd");
YawRatePIDElemNames.add("ILimit");
fields.add( new UAVObjectField("YawRatePID", "", UAVObjectField.FieldType.FLOAT32, YawRatePIDElemNames, null) );
List<String> RollPIElemNames = new ArrayList<String>();
RollPIElemNames.add("Kp");
RollPIElemNames.add("Ki");
RollPIElemNames.add("ILimit");
fields.add( new UAVObjectField("RollPI", "", UAVObjectField.FieldType.FLOAT32, RollPIElemNames, null) );
List<String> PitchPIElemNames = new ArrayList<String>();
PitchPIElemNames.add("Kp");
PitchPIElemNames.add("Ki");
PitchPIElemNames.add("ILimit");
fields.add( new UAVObjectField("PitchPI", "", UAVObjectField.FieldType.FLOAT32, PitchPIElemNames, null) );
List<String> YawPIElemNames = new ArrayList<String>();
YawPIElemNames.add("Kp");
YawPIElemNames.add("Ki");
YawPIElemNames.add("ILimit");
fields.add( new UAVObjectField("YawPI", "", UAVObjectField.FieldType.FLOAT32, YawPIElemNames, null) );
List<String> VbarSensitivityElemNames = new ArrayList<String>();
VbarSensitivityElemNames.add("Roll");
VbarSensitivityElemNames.add("Pitch");
VbarSensitivityElemNames.add("Yaw");
fields.add( new UAVObjectField("VbarSensitivity", "frac", UAVObjectField.FieldType.FLOAT32, VbarSensitivityElemNames, null) );
List<String> VbarRollPIElemNames = new ArrayList<String>();
VbarRollPIElemNames.add("Kp");
VbarRollPIElemNames.add("Ki");
fields.add( new UAVObjectField("VbarRollPI", "1/(deg/s)", UAVObjectField.FieldType.FLOAT32, VbarRollPIElemNames, null) );
List<String> VbarPitchPIElemNames = new ArrayList<String>();
VbarPitchPIElemNames.add("Kp");
VbarPitchPIElemNames.add("Ki");
fields.add( new UAVObjectField("VbarPitchPI", "1/(deg/s)", UAVObjectField.FieldType.FLOAT32, VbarPitchPIElemNames, null) );
List<String> VbarYawPIElemNames = new ArrayList<String>();
VbarYawPIElemNames.add("Kp");
VbarYawPIElemNames.add("Ki");
fields.add( new UAVObjectField("VbarYawPI", "1/(deg/s)", UAVObjectField.FieldType.FLOAT32, VbarYawPIElemNames, null) );
List<String> VbarTauElemNames = new ArrayList<String>();
VbarTauElemNames.add("0");
fields.add( new UAVObjectField("VbarTau", "sec", UAVObjectField.FieldType.FLOAT32, VbarTauElemNames, null) );
List<String> GyroTauElemNames = new ArrayList<String>();
GyroTauElemNames.add("0");
fields.add( new UAVObjectField("GyroTau", "", UAVObjectField.FieldType.FLOAT32, GyroTauElemNames, null) );
List<String> DerivativeGammaElemNames = new ArrayList<String>();
DerivativeGammaElemNames.add("0");
fields.add( new UAVObjectField("DerivativeGamma", "", UAVObjectField.FieldType.FLOAT32, DerivativeGammaElemNames, null) );
List<String> WeakLevelingKpElemNames = new ArrayList<String>();
WeakLevelingKpElemNames.add("0");
fields.add( new UAVObjectField("WeakLevelingKp", "(deg/s)/deg", UAVObjectField.FieldType.FLOAT32, WeakLevelingKpElemNames, null) );
List<String> RollMaxElemNames = new ArrayList<String>();
RollMaxElemNames.add("0");
fields.add( new UAVObjectField("RollMax", "degrees", UAVObjectField.FieldType.UINT8, RollMaxElemNames, null) );
List<String> PitchMaxElemNames = new ArrayList<String>();
PitchMaxElemNames.add("0");
fields.add( new UAVObjectField("PitchMax", "degrees", UAVObjectField.FieldType.UINT8, PitchMaxElemNames, null) );
List<String> YawMaxElemNames = new ArrayList<String>();
YawMaxElemNames.add("0");
fields.add( new UAVObjectField("YawMax", "degrees", UAVObjectField.FieldType.UINT8, YawMaxElemNames, null) );
List<String> VbarGyroSuppressElemNames = new ArrayList<String>();
VbarGyroSuppressElemNames.add("0");
fields.add( new UAVObjectField("VbarGyroSuppress", "%", UAVObjectField.FieldType.INT8, VbarGyroSuppressElemNames, null) );
List<String> VbarPiroCompElemNames = new ArrayList<String>();
VbarPiroCompElemNames.add("0");
List<String> VbarPiroCompEnumOptions = new ArrayList<String>();
VbarPiroCompEnumOptions.add("FALSE");
VbarPiroCompEnumOptions.add("TRUE");
fields.add( new UAVObjectField("VbarPiroComp", "", UAVObjectField.FieldType.ENUM, VbarPiroCompElemNames, VbarPiroCompEnumOptions) );
List<String> VbarMaxAngleElemNames = new ArrayList<String>();
VbarMaxAngleElemNames.add("0");
fields.add( new UAVObjectField("VbarMaxAngle", "deg", UAVObjectField.FieldType.UINT8, VbarMaxAngleElemNames, null) );
List<String> DerivativeCutoffElemNames = new ArrayList<String>();
DerivativeCutoffElemNames.add("0");
fields.add( new UAVObjectField("DerivativeCutoff", "Hz", UAVObjectField.FieldType.UINT8, DerivativeCutoffElemNames, null) );
List<String> MaxAxisLockElemNames = new ArrayList<String>();
MaxAxisLockElemNames.add("0");
fields.add( new UAVObjectField("MaxAxisLock", "deg", UAVObjectField.FieldType.UINT8, MaxAxisLockElemNames, null) );
List<String> MaxAxisLockRateElemNames = new ArrayList<String>();
MaxAxisLockRateElemNames.add("0");
fields.add( new UAVObjectField("MaxAxisLockRate", "deg/s", UAVObjectField.FieldType.UINT8, MaxAxisLockRateElemNames, null) );
List<String> MaxWeakLevelingRateElemNames = new ArrayList<String>();
MaxWeakLevelingRateElemNames.add("0");
fields.add( new UAVObjectField("MaxWeakLevelingRate", "deg/s", UAVObjectField.FieldType.UINT8, MaxWeakLevelingRateElemNames, null) );
List<String> LowThrottleZeroIntegralElemNames = new ArrayList<String>();
LowThrottleZeroIntegralElemNames.add("0");
List<String> LowThrottleZeroIntegralEnumOptions = new ArrayList<String>();
LowThrottleZeroIntegralEnumOptions.add("FALSE");
LowThrottleZeroIntegralEnumOptions.add("TRUE");
fields.add( new UAVObjectField("LowThrottleZeroIntegral", "", UAVObjectField.FieldType.ENUM, LowThrottleZeroIntegralElemNames, LowThrottleZeroIntegralEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("ManualRate").setValue(150,0);
getField("ManualRate").setValue(150,1);
getField("ManualRate").setValue(150,2);
getField("MaximumRate").setValue(300,0);
getField("MaximumRate").setValue(300,1);
getField("MaximumRate").setValue(300,2);
getField("RollRatePID").setValue(0.002,0);
getField("RollRatePID").setValue(0,1);
getField("RollRatePID").setValue(0,2);
getField("RollRatePID").setValue(0.3,3);
getField("PitchRatePID").setValue(0.002,0);
getField("PitchRatePID").setValue(0,1);
getField("PitchRatePID").setValue(0,2);
getField("PitchRatePID").setValue(0.3,3);
getField("YawRatePID").setValue(0.0035,0);
getField("YawRatePID").setValue(0.0035,1);
getField("YawRatePID").setValue(0,2);
getField("YawRatePID").setValue(0.3,3);
getField("RollPI").setValue(2,0);
getField("RollPI").setValue(0,1);
getField("RollPI").setValue(50,2);
getField("PitchPI").setValue(2,0);
getField("PitchPI").setValue(0,1);
getField("PitchPI").setValue(50,2);
getField("YawPI").setValue(2,0);
getField("YawPI").setValue(0,1);
getField("YawPI").setValue(50,2);
getField("VbarSensitivity").setValue(0.5,0);
getField("VbarSensitivity").setValue(0.5,1);
getField("VbarSensitivity").setValue(0.5,2);
getField("VbarRollPI").setValue(0.005,0);
getField("VbarRollPI").setValue(0.002,1);
getField("VbarPitchPI").setValue(0.005,0);
getField("VbarPitchPI").setValue(0.002,1);
getField("VbarYawPI").setValue(0.005,0);
getField("VbarYawPI").setValue(0.002,1);
getField("VbarTau").setValue(0.5);
getField("GyroTau").setValue(0.005);
getField("DerivativeGamma").setValue(1);
getField("WeakLevelingKp").setValue(0.1);
getField("RollMax").setValue(55);
getField("PitchMax").setValue(55);
getField("YawMax").setValue(35);
getField("VbarGyroSuppress").setValue(30);
getField("VbarPiroComp").setValue("FALSE");
getField("VbarMaxAngle").setValue(10);
getField("DerivativeCutoff").setValue(20);
getField("MaxAxisLock").setValue(15);
getField("MaxAxisLockRate").setValue(2);
getField("MaxWeakLevelingRate").setValue(5);
getField("LowThrottleZeroIntegral").setValue("TRUE");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
StabilizationSettings obj = new StabilizationSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public StabilizationSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (StabilizationSettings)(objMngr.getObject(StabilizationSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x3D03DE86l;
protected static final String NAME = "StabilizationSettings";
protected static String DESCRIPTION = "PID settings used by the Stabilization module to combine the @ref AttitudeActual and @ref AttitudeDesired to compute @ref ActuatorDesired";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,175 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Alarms from OpenPilot to indicate failure conditions or warnings. Set by various modules.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Alarms from OpenPilot to indicate failure conditions or warnings. Set by various modules.
generated from systemalarms.xml
**/
public class SystemAlarms extends UAVDataObject {
public SystemAlarms() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> AlarmElemNames = new ArrayList<String>();
AlarmElemNames.add("OutOfMemory");
AlarmElemNames.add("StackOverflow");
AlarmElemNames.add("CPUOverload");
AlarmElemNames.add("EventSystem");
AlarmElemNames.add("Telemetry");
AlarmElemNames.add("ManualControl");
AlarmElemNames.add("Actuator");
AlarmElemNames.add("Attitude");
AlarmElemNames.add("Sensors");
AlarmElemNames.add("Stabilization");
AlarmElemNames.add("Guidance");
AlarmElemNames.add("Battery");
AlarmElemNames.add("FlightTime");
AlarmElemNames.add("I2C");
AlarmElemNames.add("GPS");
AlarmElemNames.add("BootFault");
List<String> AlarmEnumOptions = new ArrayList<String>();
AlarmEnumOptions.add("Uninitialised");
AlarmEnumOptions.add("OK");
AlarmEnumOptions.add("Warning");
AlarmEnumOptions.add("Error");
AlarmEnumOptions.add("Critical");
fields.add( new UAVObjectField("Alarm", "", UAVObjectField.FieldType.ENUM, AlarmElemNames, AlarmEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("Alarm").setValue("Uninitialised",0);
getField("Alarm").setValue("Uninitialised",1);
getField("Alarm").setValue("Uninitialised",2);
getField("Alarm").setValue("Uninitialised",3);
getField("Alarm").setValue("Uninitialised",4);
getField("Alarm").setValue("Uninitialised",5);
getField("Alarm").setValue("Uninitialised",6);
getField("Alarm").setValue("Uninitialised",7);
getField("Alarm").setValue("Uninitialised",8);
getField("Alarm").setValue("Uninitialised",9);
getField("Alarm").setValue("Uninitialised",10);
getField("Alarm").setValue("Uninitialised",11);
getField("Alarm").setValue("Uninitialised",12);
getField("Alarm").setValue("Uninitialised",13);
getField("Alarm").setValue("Uninitialised",14);
getField("Alarm").setValue("Uninitialised",15);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
SystemAlarms obj = new SystemAlarms();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public SystemAlarms GetInstance(UAVObjectManager objMngr, long instID)
{
return (SystemAlarms)(objMngr.getObject(SystemAlarms.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x7BD9C77Al;
protected static final String NAME = "SystemAlarms";
protected static String DESCRIPTION = "Alarms from OpenPilot to indicate failure conditions or warnings. Set by various modules.";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,170 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Select airframe type. Currently used by @ref ActuatorModule to choose mixing from @ref ActuatorDesired to @ref ActuatorCommand
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Select airframe type. Currently used by @ref ActuatorModule to choose mixing from @ref ActuatorDesired to @ref ActuatorCommand
generated from systemsettings.xml
**/
public class SystemSettings extends UAVDataObject {
public SystemSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> GUIConfigDataElemNames = new ArrayList<String>();
GUIConfigDataElemNames.add("0");
GUIConfigDataElemNames.add("1");
GUIConfigDataElemNames.add("2");
GUIConfigDataElemNames.add("3");
fields.add( new UAVObjectField("GUIConfigData", "bits", UAVObjectField.FieldType.UINT32, GUIConfigDataElemNames, null) );
List<String> AirframeTypeElemNames = new ArrayList<String>();
AirframeTypeElemNames.add("0");
List<String> AirframeTypeEnumOptions = new ArrayList<String>();
AirframeTypeEnumOptions.add("FixedWing");
AirframeTypeEnumOptions.add("FixedWingElevon");
AirframeTypeEnumOptions.add("FixedWingVtail");
AirframeTypeEnumOptions.add("VTOL");
AirframeTypeEnumOptions.add("HeliCP");
AirframeTypeEnumOptions.add("QuadX");
AirframeTypeEnumOptions.add("QuadP");
AirframeTypeEnumOptions.add("Hexa");
AirframeTypeEnumOptions.add("Octo");
AirframeTypeEnumOptions.add("Custom");
AirframeTypeEnumOptions.add("HexaX");
AirframeTypeEnumOptions.add("OctoV");
AirframeTypeEnumOptions.add("OctoCoaxP");
AirframeTypeEnumOptions.add("OctoCoaxX");
AirframeTypeEnumOptions.add("HexaCoax");
AirframeTypeEnumOptions.add("Tri");
AirframeTypeEnumOptions.add("GroundVehicleCar");
AirframeTypeEnumOptions.add("GroundVehicleDifferential");
AirframeTypeEnumOptions.add("GroundVehicleMotorcycle");
fields.add( new UAVObjectField("AirframeType", "", UAVObjectField.FieldType.ENUM, AirframeTypeElemNames, AirframeTypeEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("GUIConfigData").setValue(0,0);
getField("GUIConfigData").setValue(0,1);
getField("GUIConfigData").setValue(0,2);
getField("GUIConfigData").setValue(0,3);
getField("AirframeType").setValue("QuadX");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
SystemSettings obj = new SystemSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public SystemSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (SystemSettings)(objMngr.getObject(SystemSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xC72A326El;
protected static final String NAME = "SystemSettings";
protected static String DESCRIPTION = "Select airframe type. Currently used by @ref ActuatorModule to choose mixing from @ref ActuatorDesired to @ref ActuatorCommand";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,166 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* CPU and memory usage from OpenPilot computer.
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
CPU and memory usage from OpenPilot computer.
generated from systemstats.xml
**/
public class SystemStats extends UAVDataObject {
public SystemStats() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> FlightTimeElemNames = new ArrayList<String>();
FlightTimeElemNames.add("0");
fields.add( new UAVObjectField("FlightTime", "ms", UAVObjectField.FieldType.UINT32, FlightTimeElemNames, null) );
List<String> EventSystemWarningIDElemNames = new ArrayList<String>();
EventSystemWarningIDElemNames.add("0");
fields.add( new UAVObjectField("EventSystemWarningID", "uavoid", UAVObjectField.FieldType.UINT32, EventSystemWarningIDElemNames, null) );
List<String> ObjectManagerCallbackIDElemNames = new ArrayList<String>();
ObjectManagerCallbackIDElemNames.add("0");
fields.add( new UAVObjectField("ObjectManagerCallbackID", "uavoid", UAVObjectField.FieldType.UINT32, ObjectManagerCallbackIDElemNames, null) );
List<String> ObjectManagerQueueIDElemNames = new ArrayList<String>();
ObjectManagerQueueIDElemNames.add("0");
fields.add( new UAVObjectField("ObjectManagerQueueID", "uavoid", UAVObjectField.FieldType.UINT32, ObjectManagerQueueIDElemNames, null) );
List<String> HeapRemainingElemNames = new ArrayList<String>();
HeapRemainingElemNames.add("0");
fields.add( new UAVObjectField("HeapRemaining", "bytes", UAVObjectField.FieldType.UINT16, HeapRemainingElemNames, null) );
List<String> IRQStackRemainingElemNames = new ArrayList<String>();
IRQStackRemainingElemNames.add("0");
fields.add( new UAVObjectField("IRQStackRemaining", "bytes", UAVObjectField.FieldType.UINT16, IRQStackRemainingElemNames, null) );
List<String> CPULoadElemNames = new ArrayList<String>();
CPULoadElemNames.add("0");
fields.add( new UAVObjectField("CPULoad", "%", UAVObjectField.FieldType.UINT8, CPULoadElemNames, null) );
List<String> CPUTempElemNames = new ArrayList<String>();
CPUTempElemNames.add("0");
fields.add( new UAVObjectField("CPUTemp", "C", UAVObjectField.FieldType.INT8, CPUTempElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
SystemStats obj = new SystemStats();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public SystemStats GetInstance(UAVObjectManager objMngr, long instID)
{
return (SystemStats)(objMngr.getObject(SystemStats.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x364D1406l;
protected static final String NAME = "SystemStats";
protected static String DESCRIPTION = "CPU and memory usage from OpenPilot computer. ";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,203 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Task information
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Task information
generated from taskinfo.xml
**/
public class TaskInfo extends UAVDataObject {
public TaskInfo() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> StackRemainingElemNames = new ArrayList<String>();
StackRemainingElemNames.add("System");
StackRemainingElemNames.add("Actuator");
StackRemainingElemNames.add("Attitude");
StackRemainingElemNames.add("Sensors");
StackRemainingElemNames.add("TelemetryTx");
StackRemainingElemNames.add("TelemetryTxPri");
StackRemainingElemNames.add("TelemetryRx");
StackRemainingElemNames.add("GPS");
StackRemainingElemNames.add("ManualControl");
StackRemainingElemNames.add("Altitude");
StackRemainingElemNames.add("Stabilization");
StackRemainingElemNames.add("AltitudeHold");
StackRemainingElemNames.add("Guidance");
StackRemainingElemNames.add("FlightPlan");
StackRemainingElemNames.add("Com2UsbBridge");
StackRemainingElemNames.add("Usb2ComBridge");
StackRemainingElemNames.add("OveroSync");
StackRemainingElemNames.add("Autotune");
StackRemainingElemNames.add("EventDispatcher");
fields.add( new UAVObjectField("StackRemaining", "bytes", UAVObjectField.FieldType.UINT16, StackRemainingElemNames, null) );
List<String> RunningElemNames = new ArrayList<String>();
RunningElemNames.add("System");
RunningElemNames.add("Actuator");
RunningElemNames.add("Attitude");
RunningElemNames.add("Sensors");
RunningElemNames.add("TelemetryTx");
RunningElemNames.add("TelemetryTxPri");
RunningElemNames.add("TelemetryRx");
RunningElemNames.add("GPS");
RunningElemNames.add("ManualControl");
RunningElemNames.add("Altitude");
RunningElemNames.add("Stabilization");
RunningElemNames.add("AltitudeHold");
RunningElemNames.add("Guidance");
RunningElemNames.add("FlightPlan");
RunningElemNames.add("Com2UsbBridge");
RunningElemNames.add("Usb2ComBridge");
RunningElemNames.add("OveroSync");
RunningElemNames.add("Autotune");
RunningElemNames.add("EventDispatcher");
List<String> RunningEnumOptions = new ArrayList<String>();
RunningEnumOptions.add("False");
RunningEnumOptions.add("True");
fields.add( new UAVObjectField("Running", "bool", UAVObjectField.FieldType.ENUM, RunningElemNames, RunningEnumOptions) );
List<String> RunningTimeElemNames = new ArrayList<String>();
RunningTimeElemNames.add("System");
RunningTimeElemNames.add("Actuator");
RunningTimeElemNames.add("Attitude");
RunningTimeElemNames.add("Sensors");
RunningTimeElemNames.add("TelemetryTx");
RunningTimeElemNames.add("TelemetryTxPri");
RunningTimeElemNames.add("TelemetryRx");
RunningTimeElemNames.add("GPS");
RunningTimeElemNames.add("ManualControl");
RunningTimeElemNames.add("Altitude");
RunningTimeElemNames.add("Stabilization");
RunningTimeElemNames.add("AltitudeHold");
RunningTimeElemNames.add("Guidance");
RunningTimeElemNames.add("FlightPlan");
RunningTimeElemNames.add("Com2UsbBridge");
RunningTimeElemNames.add("Usb2ComBridge");
RunningTimeElemNames.add("OveroSync");
RunningTimeElemNames.add("Autotune");
RunningTimeElemNames.add("EventDispatcher");
fields.add( new UAVObjectField("RunningTime", "%", UAVObjectField.FieldType.UINT8, RunningTimeElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 10000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
TaskInfo obj = new TaskInfo();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public TaskInfo GetInstance(UAVObjectManager objMngr, long instID)
{
return (TaskInfo)(objMngr.getObject(TaskInfo.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xB81CD2AEl;
protected static final String NAME = "TaskInfo";
protected static String DESCRIPTION = "Task information";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -0,0 +1,44 @@
/**
******************************************************************************
*
*
* @file uavobjectsinittemplate.java
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief the template for the uavobjects init part
* $(GENERATEDWARNING)
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import org.openpilot.uavtalk.UAVObjectManager;
public class TelemObjectsInitialize {
public static void register(UAVObjectManager objMngr) {
try {
objMngr.registerObject( new FirmwareIAPObj() );
objMngr.registerObject( new FlightTelemetryStats() );
objMngr.registerObject( new GCSTelemetryStats() );
} catch (Exception e) {
e.printStackTrace();
}
}
}

View File

@ -1,225 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings used by @ref TxPID optional module to tune PID settings using R/C transmitter
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings used by @ref TxPID optional module to tune PID settings using R/C transmitter
generated from txpidsettings.xml
**/
public class TxPIDSettings extends UAVDataObject {
public TxPIDSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> ThrottleRangeElemNames = new ArrayList<String>();
ThrottleRangeElemNames.add("Min");
ThrottleRangeElemNames.add("Max");
fields.add( new UAVObjectField("ThrottleRange", "%", UAVObjectField.FieldType.FLOAT32, ThrottleRangeElemNames, null) );
List<String> MinPIDElemNames = new ArrayList<String>();
MinPIDElemNames.add("Instance1");
MinPIDElemNames.add("Instance2");
MinPIDElemNames.add("Instance3");
fields.add( new UAVObjectField("MinPID", "", UAVObjectField.FieldType.FLOAT32, MinPIDElemNames, null) );
List<String> MaxPIDElemNames = new ArrayList<String>();
MaxPIDElemNames.add("Instance1");
MaxPIDElemNames.add("Instance2");
MaxPIDElemNames.add("Instance3");
fields.add( new UAVObjectField("MaxPID", "", UAVObjectField.FieldType.FLOAT32, MaxPIDElemNames, null) );
List<String> UpdateModeElemNames = new ArrayList<String>();
UpdateModeElemNames.add("0");
List<String> UpdateModeEnumOptions = new ArrayList<String>();
UpdateModeEnumOptions.add("Never");
UpdateModeEnumOptions.add("When Armed");
UpdateModeEnumOptions.add("Always");
fields.add( new UAVObjectField("UpdateMode", "option", UAVObjectField.FieldType.ENUM, UpdateModeElemNames, UpdateModeEnumOptions) );
List<String> InputsElemNames = new ArrayList<String>();
InputsElemNames.add("Instance1");
InputsElemNames.add("Instance2");
InputsElemNames.add("Instance3");
List<String> InputsEnumOptions = new ArrayList<String>();
InputsEnumOptions.add("Throttle");
InputsEnumOptions.add("Accessory0");
InputsEnumOptions.add("Accessory1");
InputsEnumOptions.add("Accessory2");
InputsEnumOptions.add("Accessory3");
InputsEnumOptions.add("Accessory4");
InputsEnumOptions.add("Accessory5");
fields.add( new UAVObjectField("Inputs", "channel", UAVObjectField.FieldType.ENUM, InputsElemNames, InputsEnumOptions) );
List<String> PIDsElemNames = new ArrayList<String>();
PIDsElemNames.add("Instance1");
PIDsElemNames.add("Instance2");
PIDsElemNames.add("Instance3");
List<String> PIDsEnumOptions = new ArrayList<String>();
PIDsEnumOptions.add("Disabled");
PIDsEnumOptions.add("Roll Rate.Kp");
PIDsEnumOptions.add("Pitch Rate.Kp");
PIDsEnumOptions.add("Roll+Pitch Rate.Kp");
PIDsEnumOptions.add("Yaw Rate.Kp");
PIDsEnumOptions.add("Roll Rate.Ki");
PIDsEnumOptions.add("Pitch Rate.Ki");
PIDsEnumOptions.add("Roll+Pitch Rate.Ki");
PIDsEnumOptions.add("Yaw Rate.Ki");
PIDsEnumOptions.add("Roll Rate.Kd");
PIDsEnumOptions.add("Pitch Rate.Kd");
PIDsEnumOptions.add("Roll+Pitch Rate.Kd");
PIDsEnumOptions.add("Yaw Rate.Kd");
PIDsEnumOptions.add("Roll Rate.ILimit");
PIDsEnumOptions.add("Pitch Rate.ILimit");
PIDsEnumOptions.add("Roll+Pitch Rate.ILimit");
PIDsEnumOptions.add("Yaw Rate.ILimit");
PIDsEnumOptions.add("Roll Attitude.Kp");
PIDsEnumOptions.add("Pitch Attitude.Kp");
PIDsEnumOptions.add("Roll+Pitch Attitude.Kp");
PIDsEnumOptions.add("Yaw Attitude.Kp");
PIDsEnumOptions.add("Roll Attitude.Ki");
PIDsEnumOptions.add("Pitch Attitude.Ki");
PIDsEnumOptions.add("Roll+Pitch Attitude.Ki");
PIDsEnumOptions.add("Yaw Attitude.Ki");
PIDsEnumOptions.add("Roll Attitude.ILimit");
PIDsEnumOptions.add("Pitch Attitude.ILimit");
PIDsEnumOptions.add("Roll+Pitch Attitude.ILimit");
PIDsEnumOptions.add("Yaw Attitude.ILimit");
PIDsEnumOptions.add("GyroTau");
fields.add( new UAVObjectField("PIDs", "option", UAVObjectField.FieldType.ENUM, PIDsElemNames, PIDsEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("ThrottleRange").setValue(0.2,0);
getField("ThrottleRange").setValue(0.8,1);
getField("MinPID").setValue(0,0);
getField("MinPID").setValue(0,1);
getField("MinPID").setValue(0,2);
getField("MaxPID").setValue(0,0);
getField("MaxPID").setValue(0,1);
getField("MaxPID").setValue(0,2);
getField("UpdateMode").setValue("When Armed");
getField("Inputs").setValue("Throttle",0);
getField("Inputs").setValue("Accessory0",1);
getField("Inputs").setValue("Accessory1",2);
getField("PIDs").setValue("Disabled",0);
getField("PIDs").setValue("Disabled",1);
getField("PIDs").setValue("Disabled",2);
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
TxPIDSettings obj = new TxPIDSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public TxPIDSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (TxPIDSettings)(objMngr.getObject(TxPIDSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x42B2D2AEl;
protected static final String NAME = "TxPIDSettings";
protected static String DESCRIPTION = "Settings used by @ref TxPID optional module to tune PID settings using R/C transmitter";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,108 +0,0 @@
/**
******************************************************************************
*
*
* @file uavobjectsinittemplate.java
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief the template for the uavobjects init part
* $(GENERATEDWARNING)
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import org.openpilot.uavtalk.UAVObjectManager;
public class UAVObjectsInitialize {
public static void register(UAVObjectManager objMngr) {
try {
objMngr.registerObject( new Accels() );
objMngr.registerObject( new AccessoryDesired() );
objMngr.registerObject( new ActuatorCommand() );
objMngr.registerObject( new ActuatorDesired() );
objMngr.registerObject( new ActuatorSettings() );
objMngr.registerObject( new AltHoldSmoothed() );
objMngr.registerObject( new AltitudeHoldDesired() );
objMngr.registerObject( new AltitudeHoldSettings() );
objMngr.registerObject( new AttitudeActual() );
objMngr.registerObject( new AttitudeSettings() );
objMngr.registerObject( new BaroAltitude() );
objMngr.registerObject( new CameraDesired() );
objMngr.registerObject( new CameraStabSettings() );
objMngr.registerObject( new FaultSettings() );
objMngr.registerObject( new FirmwareIAPObj() );
objMngr.registerObject( new FlightBatterySettings() );
objMngr.registerObject( new FlightBatteryState() );
objMngr.registerObject( new FlightPlanControl() );
objMngr.registerObject( new FlightPlanSettings() );
objMngr.registerObject( new FlightPlanStatus() );
objMngr.registerObject( new FlightStatus() );
objMngr.registerObject( new FlightTelemetryStats() );
objMngr.registerObject( new GCSReceiver() );
objMngr.registerObject( new GCSTelemetryStats() );
objMngr.registerObject( new GPSPosition() );
objMngr.registerObject( new GPSSatellites() );
objMngr.registerObject( new GPSSettings() );
objMngr.registerObject( new GPSTime() );
objMngr.registerObject( new GPSVelocity() );
objMngr.registerObject( new GuidanceSettings() );
objMngr.registerObject( new Gyros() );
objMngr.registerObject( new GyrosBias() );
objMngr.registerObject( new HomeLocation() );
objMngr.registerObject( new HwSettings() );
objMngr.registerObject( new I2CStats() );
objMngr.registerObject( new Magnetometer() );
objMngr.registerObject( new ManualControlCommand() );
objMngr.registerObject( new ManualControlSettings() );
objMngr.registerObject( new MixerSettings() );
objMngr.registerObject( new MixerStatus() );
objMngr.registerObject( new NedAccel() );
objMngr.registerObject( new ObjectPersistence() );
objMngr.registerObject( new OveroSyncStats() );
objMngr.registerObject( new PathAction() );
objMngr.registerObject( new PipXSettings() );
objMngr.registerObject( new PipXStatus() );
objMngr.registerObject( new PositionActual() );
objMngr.registerObject( new PositionDesired() );
objMngr.registerObject( new RateDesired() );
objMngr.registerObject( new ReceiverActivity() );
objMngr.registerObject( new RelayTuning() );
objMngr.registerObject( new RelayTuningSettings() );
objMngr.registerObject( new RevoCalibration() );
objMngr.registerObject( new SonarAltitude() );
objMngr.registerObject( new StabilizationDesired() );
objMngr.registerObject( new StabilizationSettings() );
objMngr.registerObject( new SystemAlarms() );
objMngr.registerObject( new SystemSettings() );
objMngr.registerObject( new SystemStats() );
objMngr.registerObject( new TaskInfo() );
objMngr.registerObject( new TxPIDSettings() );
objMngr.registerObject( new VelocityActual() );
objMngr.registerObject( new VelocityDesired() );
objMngr.registerObject( new WatchdogStatus() );
objMngr.registerObject( new Waypoint() );
objMngr.registerObject( new WaypointActive() );
} catch (Exception e) {
e.printStackTrace();
}
}
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Updated by @ref AHRSCommsModule and used within @ref GuidanceModule for velocity control
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Updated by @ref AHRSCommsModule and used within @ref GuidanceModule for velocity control
generated from velocityactual.xml
**/
public class VelocityActual extends UAVDataObject {
public VelocityActual() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> NorthElemNames = new ArrayList<String>();
NorthElemNames.add("0");
fields.add( new UAVObjectField("North", "m/s", UAVObjectField.FieldType.FLOAT32, NorthElemNames, null) );
List<String> EastElemNames = new ArrayList<String>();
EastElemNames.add("0");
fields.add( new UAVObjectField("East", "m/s", UAVObjectField.FieldType.FLOAT32, EastElemNames, null) );
List<String> DownElemNames = new ArrayList<String>();
DownElemNames.add("0");
fields.add( new UAVObjectField("Down", "m/s", UAVObjectField.FieldType.FLOAT32, DownElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
VelocityActual obj = new VelocityActual();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public VelocityActual GetInstance(UAVObjectManager objMngr, long instID)
{
return (VelocityActual)(objMngr.getObject(VelocityActual.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x5A08F61Al;
protected static final String NAME = "VelocityActual";
protected static String DESCRIPTION = "Updated by @ref AHRSCommsModule and used within @ref GuidanceModule for velocity control";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,146 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Used within @ref GuidanceModule to communicate between the task computing the desired velocity and the PID loop to achieve it (running at different rates).
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Used within @ref GuidanceModule to communicate between the task computing the desired velocity and the PID loop to achieve it (running at different rates).
generated from velocitydesired.xml
**/
public class VelocityDesired extends UAVDataObject {
public VelocityDesired() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> NorthElemNames = new ArrayList<String>();
NorthElemNames.add("0");
fields.add( new UAVObjectField("North", "m/s", UAVObjectField.FieldType.FLOAT32, NorthElemNames, null) );
List<String> EastElemNames = new ArrayList<String>();
EastElemNames.add("0");
fields.add( new UAVObjectField("East", "m/s", UAVObjectField.FieldType.FLOAT32, EastElemNames, null) );
List<String> DownElemNames = new ArrayList<String>();
DownElemNames.add("0");
fields.add( new UAVObjectField("Down", "m/s", UAVObjectField.FieldType.FLOAT32, DownElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 1000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
VelocityDesired obj = new VelocityDesired();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public VelocityDesired GetInstance(UAVObjectManager objMngr, long instID)
{
return (VelocityDesired)(objMngr.getObject(VelocityDesired.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x9E946992l;
protected static final String NAME = "VelocityDesired";
protected static String DESCRIPTION = "Used within @ref GuidanceModule to communicate between the task computing the desired velocity and the PID loop to achieve it (running at different rates).";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,232 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Settings for the @ref VtolPathFollower module
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Settings for the @ref VtolPathFollower module
generated from vtolpathfollowersettings.xml
**/
public class VtolPathFollowerSettings extends UAVDataObject {
public VtolPathFollowerSettings() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> HorizontalPosPIElemNames = new ArrayList<String>();
HorizontalPosPIElemNames.add("Kp");
HorizontalPosPIElemNames.add("Ki");
HorizontalPosPIElemNames.add("ILimit");
fields.add( new UAVObjectField("HorizontalPosPI", "(m/s)/m", UAVObjectField.FieldType.FLOAT32, HorizontalPosPIElemNames, null) );
List<String> HorizontalVelPIDElemNames = new ArrayList<String>();
HorizontalVelPIDElemNames.add("Kp");
HorizontalVelPIDElemNames.add("Ki");
HorizontalVelPIDElemNames.add("Kd");
HorizontalVelPIDElemNames.add("ILimit");
fields.add( new UAVObjectField("HorizontalVelPID", "deg/(m/s)", UAVObjectField.FieldType.FLOAT32, HorizontalVelPIDElemNames, null) );
List<String> VerticalPosPIElemNames = new ArrayList<String>();
VerticalPosPIElemNames.add("Kp");
VerticalPosPIElemNames.add("Ki");
VerticalPosPIElemNames.add("ILimit");
fields.add( new UAVObjectField("VerticalPosPI", "", UAVObjectField.FieldType.FLOAT32, VerticalPosPIElemNames, null) );
List<String> VerticalVelPIDElemNames = new ArrayList<String>();
VerticalVelPIDElemNames.add("Kp");
VerticalVelPIDElemNames.add("Ki");
VerticalVelPIDElemNames.add("Kd");
VerticalVelPIDElemNames.add("ILimit");
fields.add( new UAVObjectField("VerticalVelPID", "", UAVObjectField.FieldType.FLOAT32, VerticalVelPIDElemNames, null) );
List<String> VelocityFeedforwardElemNames = new ArrayList<String>();
VelocityFeedforwardElemNames.add("0");
fields.add( new UAVObjectField("VelocityFeedforward", "deg/(m/s)", UAVObjectField.FieldType.FLOAT32, VelocityFeedforwardElemNames, null) );
List<String> MaxRollPitchElemNames = new ArrayList<String>();
MaxRollPitchElemNames.add("0");
fields.add( new UAVObjectField("MaxRollPitch", "deg", UAVObjectField.FieldType.FLOAT32, MaxRollPitchElemNames, null) );
List<String> UpdatePeriodElemNames = new ArrayList<String>();
UpdatePeriodElemNames.add("0");
fields.add( new UAVObjectField("UpdatePeriod", "ms", UAVObjectField.FieldType.INT32, UpdatePeriodElemNames, null) );
List<String> HorizontalVelMaxElemNames = new ArrayList<String>();
HorizontalVelMaxElemNames.add("0");
fields.add( new UAVObjectField("HorizontalVelMax", "m/s", UAVObjectField.FieldType.UINT16, HorizontalVelMaxElemNames, null) );
List<String> VerticalVelMaxElemNames = new ArrayList<String>();
VerticalVelMaxElemNames.add("0");
fields.add( new UAVObjectField("VerticalVelMax", "m/s", UAVObjectField.FieldType.UINT16, VerticalVelMaxElemNames, null) );
List<String> GuidanceModeElemNames = new ArrayList<String>();
GuidanceModeElemNames.add("0");
List<String> GuidanceModeEnumOptions = new ArrayList<String>();
GuidanceModeEnumOptions.add("DUAL_LOOP");
GuidanceModeEnumOptions.add("VELOCITY_CONTROL");
fields.add( new UAVObjectField("GuidanceMode", "", UAVObjectField.FieldType.ENUM, GuidanceModeElemNames, GuidanceModeEnumOptions) );
List<String> ThrottleControlElemNames = new ArrayList<String>();
ThrottleControlElemNames.add("0");
List<String> ThrottleControlEnumOptions = new ArrayList<String>();
ThrottleControlEnumOptions.add("FALSE");
ThrottleControlEnumOptions.add("TRUE");
fields.add( new UAVObjectField("ThrottleControl", "", UAVObjectField.FieldType.ENUM, ThrottleControlElemNames, ThrottleControlEnumOptions) );
List<String> VelocitySourceElemNames = new ArrayList<String>();
VelocitySourceElemNames.add("0");
List<String> VelocitySourceEnumOptions = new ArrayList<String>();
VelocitySourceEnumOptions.add("EKF");
VelocitySourceEnumOptions.add("NEDVEL");
VelocitySourceEnumOptions.add("GPSPOS");
fields.add( new UAVObjectField("VelocitySource", "", UAVObjectField.FieldType.ENUM, VelocitySourceElemNames, VelocitySourceEnumOptions) );
List<String> PositionSourceElemNames = new ArrayList<String>();
PositionSourceElemNames.add("0");
List<String> PositionSourceEnumOptions = new ArrayList<String>();
PositionSourceEnumOptions.add("EKF");
PositionSourceEnumOptions.add("GPSPOS");
fields.add( new UAVObjectField("PositionSource", "", UAVObjectField.FieldType.ENUM, PositionSourceElemNames, PositionSourceEnumOptions) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
1 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
1 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 0;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
getField("HorizontalPosPI").setValue(1,0);
getField("HorizontalPosPI").setValue(0,1);
getField("HorizontalPosPI").setValue(0,2);
getField("HorizontalVelPID").setValue(5,0);
getField("HorizontalVelPID").setValue(0,1);
getField("HorizontalVelPID").setValue(1,2);
getField("HorizontalVelPID").setValue(0,3);
getField("VerticalPosPI").setValue(0.1,0);
getField("VerticalPosPI").setValue(0.001,1);
getField("VerticalPosPI").setValue(200,2);
getField("VerticalVelPID").setValue(0.1,0);
getField("VerticalVelPID").setValue(0,1);
getField("VerticalVelPID").setValue(0,2);
getField("VerticalVelPID").setValue(0,3);
getField("VelocityFeedforward").setValue(0);
getField("MaxRollPitch").setValue(20);
getField("UpdatePeriod").setValue(100);
getField("HorizontalVelMax").setValue(10);
getField("VerticalVelMax").setValue(1);
getField("GuidanceMode").setValue("DUAL_LOOP");
getField("ThrottleControl").setValue("FALSE");
getField("VelocitySource").setValue("EKF");
getField("PositionSource").setValue("EKF");
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
VtolPathFollowerSettings obj = new VtolPathFollowerSettings();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public VtolPathFollowerSettings GetInstance(UAVObjectManager objMngr, long instID)
{
return (VtolPathFollowerSettings)(objMngr.getObject(VtolPathFollowerSettings.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x973991F6l;
protected static final String NAME = "VtolPathFollowerSettings";
protected static String DESCRIPTION = "Settings for the @ref VtolPathFollower module";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 1 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,142 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* For monitoring the flags in the watchdog and especially the bootup flags
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
For monitoring the flags in the watchdog and especially the bootup flags
generated from watchdogstatus.xml
**/
public class WatchdogStatus extends UAVDataObject {
public WatchdogStatus() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> BootupFlagsElemNames = new ArrayList<String>();
BootupFlagsElemNames.add("0");
fields.add( new UAVObjectField("BootupFlags", "", UAVObjectField.FieldType.UINT16, BootupFlagsElemNames, null) );
List<String> ActiveFlagsElemNames = new ArrayList<String>();
ActiveFlagsElemNames.add("0");
fields.add( new UAVObjectField("ActiveFlags", "", UAVObjectField.FieldType.UINT16, ActiveFlagsElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 5000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 5000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
WatchdogStatus obj = new WatchdogStatus();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public WatchdogStatus GetInstance(UAVObjectManager objMngr, long instID)
{
return (WatchdogStatus)(objMngr.getObject(WatchdogStatus.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xA207FA7Cl;
protected static final String NAME = "WatchdogStatus";
protected static String DESCRIPTION = "For monitoring the flags in the watchdog and especially the bootup flags";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,148 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* A waypoint the aircraft can try and hit. Used by the @ref PathPlanner module
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
A waypoint the aircraft can try and hit. Used by the @ref PathPlanner module
generated from waypoint.xml
**/
public class Waypoint extends UAVDataObject {
public Waypoint() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> PositionElemNames = new ArrayList<String>();
PositionElemNames.add("North");
PositionElemNames.add("East");
PositionElemNames.add("Down");
fields.add( new UAVObjectField("Position", "m", UAVObjectField.FieldType.FLOAT32, PositionElemNames, null) );
List<String> VelocityElemNames = new ArrayList<String>();
VelocityElemNames.add("0");
fields.add( new UAVObjectField("Velocity", "m/s", UAVObjectField.FieldType.FLOAT32, VelocityElemNames, null) );
List<String> ActionElemNames = new ArrayList<String>();
ActionElemNames.add("0");
fields.add( new UAVObjectField("Action", "", UAVObjectField.FieldType.UINT8, ActionElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_PERIODIC) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 4000;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
Waypoint obj = new Waypoint();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public Waypoint GetInstance(UAVObjectManager objMngr, long instID)
{
return (Waypoint)(objMngr.getObject(Waypoint.OBJID, instID));
}
// Constants
protected static final long OBJID = 0xD23852DCl;
protected static final String NAME = "Waypoint";
protected static String DESCRIPTION = "A waypoint the aircraft can try and hit. Used by the @ref PathPlanner module";
protected static final boolean ISSINGLEINST = 0 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,138 +0,0 @@
/**
******************************************************************************
*
* @file uavobjecttemplate.cpp
* @author The OpenPilot Team, http://www.openpilot.org Copyright (C) 2010.
* @brief Template for an uavobject in java
* This is a autogenerated file!! Do not modify and expect a result.
* Indicates the currently active waypoint
*
* @see The GNU Public License (GPL) Version 3
*
*****************************************************************************/
/*
* This program 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.
*
* This program 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 this program; if not, write to the Free Software Foundation, Inc.,
* 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package org.openpilot.uavtalk.uavobjects;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import java.util.ListIterator;
import org.openpilot.uavtalk.UAVObjectManager;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.UAVDataObject;
import org.openpilot.uavtalk.UAVObjectField;
/**
Indicates the currently active waypoint
generated from waypointactive.xml
**/
public class WaypointActive extends UAVDataObject {
public WaypointActive() {
super(OBJID, ISSINGLEINST, ISSETTINGS, NAME);
List<UAVObjectField> fields = new ArrayList<UAVObjectField>();
List<String> IndexElemNames = new ArrayList<String>();
IndexElemNames.add("0");
fields.add( new UAVObjectField("Index", "", UAVObjectField.FieldType.UINT8, IndexElemNames, null) );
// Compute the number of bytes for this object
int numBytes = 0;
ListIterator<UAVObjectField> li = fields.listIterator();
while(li.hasNext()) {
numBytes += li.next().getNumBytes();
}
NUMBYTES = numBytes;
// Initialize object
initializeFields(fields, ByteBuffer.allocate(NUMBYTES), NUMBYTES);
// Set the default field values
setDefaultFieldValues();
// Set the object description
setDescription(DESCRIPTION);
}
/**
* Create a Metadata object filled with default values for this object
* @return Metadata object with default values
*/
public Metadata getDefaultMetadata() {
UAVObject.Metadata metadata = new UAVObject.Metadata();
metadata.flags =
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_ACCESS_SHIFT |
UAVObject.Metadata.AccessModeNum(UAVObject.AccessMode.ACCESS_READWRITE) << UAVOBJ_GCS_ACCESS_SHIFT |
0 << UAVOBJ_TELEMETRY_ACKED_SHIFT |
0 << UAVOBJ_GCS_TELEMETRY_ACKED_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_ONCHANGE) << UAVOBJ_TELEMETRY_UPDATE_MODE_SHIFT |
UAVObject.Metadata.UpdateModeNum(UAVObject.UpdateMode.UPDATEMODE_MANUAL) << UAVOBJ_GCS_TELEMETRY_UPDATE_MODE_SHIFT;
metadata.flightTelemetryUpdatePeriod = 0;
metadata.gcsTelemetryUpdatePeriod = 0;
metadata.loggingUpdatePeriod = 1000;
return metadata;
}
/**
* Initialize object fields with the default values.
* If a default value is not specified the object fields
* will be initialized to zero.
*/
public void setDefaultFieldValues()
{
}
/**
* Create a clone of this object, a new instance ID must be specified.
* Do not use this function directly to create new instances, the
* UAVObjectManager should be used instead.
*/
public UAVDataObject clone(long instID) {
// TODO: Need to get specific instance to clone
try {
WaypointActive obj = new WaypointActive();
obj.initialize(instID, this.getMetaObject());
return obj;
} catch (Exception e) {
return null;
}
}
/**
* Static function to retrieve an instance of the object.
*/
public WaypointActive GetInstance(UAVObjectManager objMngr, long instID)
{
return (WaypointActive)(objMngr.getObject(WaypointActive.OBJID, instID));
}
// Constants
protected static final long OBJID = 0x1EA5B192l;
protected static final String NAME = "WaypointActive";
protected static String DESCRIPTION = "Indicates the currently active waypoint";
protected static final boolean ISSINGLEINST = 1 > 0;
protected static final boolean ISSETTINGS = 0 > 0;
protected static int NUMBYTES = 0;
}

View File

@ -1,93 +0,0 @@
package org.openpilot.uavtalk;
import static org.junit.Assert.*;
import java.nio.ByteBuffer;
import java.util.Observer;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openpilot.uavtalk.uavobjects.ActuatorCommand;
import org.openpilot.uavtalk.uavobjects.UAVObjectsInitialize;
public class DataObjectTest {
boolean succeed = false;
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}
@Test
public void testUpdatedObserver() {
succeed = false;
UAVObject obj = new ActuatorCommand();
obj.addUpdatedObserver( new Observer() {
public void update(java.util.Observable observable, Object data) {
System.out.println("Updated: " + data.toString());
succeed = true;
}
});
obj.updated();
if(!succeed)
fail("No callback");
System.out.println("Done");
}
@Test
public void testUpdatedViaObjMngr() {
succeed = false;
UAVObjectManager objMngr = new UAVObjectManager();
UAVObjectsInitialize.register(objMngr);
UAVObject obj = objMngr.getObject("FlightTelemetryStats");
obj.addUpdatedObserver( new Observer() {
public void update(java.util.Observable observable, Object data) {
System.out.println("Updated: " + data.toString());
succeed = true;
}
});
objMngr.getObject("FlightTelemetryStats").updated();
if(!succeed)
fail("No callback");
System.out.println("Done");
}
@Test
public void testUnpackedViaObjMngr() {
succeed = false;
UAVObjectManager objMngr = new UAVObjectManager();
UAVObjectsInitialize.register(objMngr);
UAVObject obj = objMngr.getObject("FlightTelemetryStats");
obj.addUnpackedObserver( new Observer() {
public void update(java.util.Observable observable, Object data) {
System.out.println("Updated: " + data.toString());
succeed = true;
}
});
ByteBuffer bbuf = ByteBuffer.allocate(obj.getNumBytes());
objMngr.getObject("FlightTelemetryStats").unpack(bbuf);
if(!succeed)
fail("No callback");
System.out.println("Done");
}
}

View File

@ -1,121 +0,0 @@
package org.openpilot.uavtalk;
import static org.junit.Assert.*;
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.List;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openpilot.uavtalk.UAVObjectField;
import org.openpilot.uavtalk.UAVObject;
import org.openpilot.uavtalk.uavobjects.*;
public class FieldTest {
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}
@Test
public void testPackUint16() {
// Need an object initialized to the field to provide metadata
UAVObject obj = null;
try {
obj = new ActuatorCommand();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
UAVObjectField field = new UAVObjectField("TestField", "No Units", UAVObjectField.FieldType.UINT16, 3, null);
field.initialize(obj);
field.setValue(3,0);
field.setValue(-50,1);
field.setValue(5003585,2);
ByteBuffer bbuf = ByteBuffer.allocate(field.getNumBytes());
try {
field.pack(bbuf);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
fail("Buffer size incorrect");
}
// Expect data to come out as little endian
byte[] expected = {3,0,0,0,(byte) 0xff,(byte) 0xff};
for(int i = 0; i < expected.length && i < bbuf.array().length; i++) {
System.out.println("Expected: " + expected[i] + " (" + i + ")");
System.out.println("Received: " + bbuf.array()[i] + " (" + i + ")");
assertEquals(bbuf.array()[i],expected[i]);
}
}
@Test
public void testUnpackUint16() {
// Need an object initialized to the field to provide metadata
UAVObject obj = null;
obj = new ActuatorCommand();
UAVObjectField field = new UAVObjectField("TestField", "No Units", UAVObjectField.FieldType.UINT16, 3, null);
field.initialize(obj);
ByteBuffer bbuf = ByteBuffer.allocate(field.getNumBytes());
byte[] expected = {3,0,0,0,(byte) 0xff,(byte) 0xff};
bbuf.put(expected);
bbuf.position(0);
field.unpack(bbuf);
assertEquals(field.getValue(0), 3);
assertEquals(field.getValue(1), 0);
assertEquals(field.getValue(2), 65535);
}
@Test
public void testEnumSetGetValue() {
List<String> options = new ArrayList<String>();
options.add("Opt1");
options.add("Opt2");
options.add("Opt3");
// Need an object initialized to the field to provide metadata
UAVObject obj = null;
try {
obj = new ActuatorCommand();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
UAVObjectField field = new UAVObjectField("TestField", "No Units", UAVObjectField.FieldType.ENUM, 3, options);
field.initialize(obj);
field.setValue("Opt1",0);
field.setValue("Opt2",1);
field.setValue("Opt3",2);
assertEquals(field.getValue(0), "Opt1");
assertEquals(field.getValue(1), "Opt2");
assertEquals(field.getValue(2), "Opt3");
}
@Test
public void testUint16SetGetValue() {
// Need an object initialized to the field to provide metadata
UAVObject obj = null;
try {
obj = new ActuatorCommand();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
UAVObjectField field = new UAVObjectField("TestField", "No Units", UAVObjectField.FieldType.UINT16, 3, null);
field.initialize(obj);
field.setValue(3,0);
field.setValue(-50,1);
field.setValue(5003585,2);
assertEquals(field.getValue(0), 3);
assertEquals(field.getValue(1), 0);
assertEquals(field.getValue(2), 65535);
}
}

View File

@ -1,20 +0,0 @@
package org.openpilot.uavtalk;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openpilot.uavtalk.uavobjects.UAVObjectsInitialize;
public class ObjMngrTest {
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}
@Test
public void testGetObjects() {
UAVObjectManager objMngr = new UAVObjectManager();
UAVObjectsInitialize.register(objMngr);
// System.out.println(objMngr.getObject("ActuatorSettings", 0));
}
}

View File

@ -1,34 +0,0 @@
package org.openpilot.uavtalk;
import static org.junit.Assert.*;
import org.junit.BeforeClass;
import org.junit.Test;
public class SettingsTest {
@BeforeClass
public static void setUpBeforeClass() throws Exception {
}
@Test
public void testGetDefaultMetadata() {
fail("Not yet implemented");
}
@Test
public void testSetDefaultFieldValues() {
fail("Not yet implemented");
}
@Test
public void testIsSettings() {
fail("Not yet implemented");
}
@Test
public void testGetField() {
fail("Not yet implemented");
}
}

View File

@ -1,133 +0,0 @@
package org.openpilot.uavtalk;
import static org.junit.Assert.*;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.net.InetAddress;
import java.net.Socket;
import java.util.Observable;
import java.util.Observer;
import org.junit.BeforeClass;
import org.junit.Test;
import org.openpilot.uavtalk.uavobjects.UAVObjectsInitialize;
import org.openpilot.uavtalk.UAVTalk;
public class TalkTest {
static UAVObjectManager objMngr;
static final String IP_ADDRDESS = new String("127.0.0.1");
static final int PORT_NUM = 7777;
boolean succeed = false;
byte[] flightStatsConnected =
{0x3c,0x20,0x1d,0x00,
(byte) 0x5e,(byte) 0x26,(byte) 0x0c,(byte) 0x66,
0x03,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,
0x00,(byte) 0xAE};
@BeforeClass
public static void setUpBeforeClass() throws Exception {
objMngr = new UAVObjectManager();
UAVObjectsInitialize.register(objMngr);
}
//@Test
public void testGetFlightStatus() {
Socket connection = null;
UAVTalk talk = null;
try{
InetAddress ip = InetAddress.getByName(IP_ADDRDESS);
connection = new Socket(ip, PORT_NUM);
} catch (Exception e) {
e.printStackTrace();
fail("Couldn't connect to test platform");
}
try {
talk = new UAVTalk(connection.getInputStream(), connection.getOutputStream(), objMngr);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
fail("Couldn't construct UAVTalk object");
}
Thread inputStream = talk.getInputProcessThread();
inputStream.start();
succeed = false;
UAVObject obj = objMngr.getObject("FlightTelemetryStats");
obj.addUpdatedObserver( new Observer() {
public void update(Observable observable, Object data) {
// TODO Auto-generated method stub
System.out.println("Updated: " + data.toString());
succeed = true;
}
});
try {
Thread.sleep(1000);
} catch (InterruptedException e1) {
}
if(!succeed)
fail("Never received a FlightTelemetryStats update");
}
@Test
public void testSendObjectRequest() throws IOException {
ByteArrayInputStream is = new ByteArrayInputStream(new byte[0], 0, 0);
ByteArrayOutputStream os = new ByteArrayOutputStream(100);
UAVTalk talk = new UAVTalk(is,os,objMngr);
UAVObject obj = objMngr.getObject("FlightTelemetryStats");
obj.getField("Status").setValue("Connected");
talk.sendObject(obj, false, false);
System.out.println("Size: " + os.size());
byte [] array = os.toByteArray();
for(int i = 0; i < array.length; i++) {
System.out.print("0x" + Integer.toHexString((int) array[i] & 0xff));
System.out.print("/0x" + Integer.toHexString((int) flightStatsConnected[i] & 0xff));
if(i != array.length-1)
System.out.print("\n");
}
System.out.print("\n");
for(int i = 0; i < array.length; i++)
assertEquals(os.toByteArray()[i], flightStatsConnected[i]);
}
@Test
public void testReceiveObject() throws InterruptedException {
ByteArrayInputStream is = new ByteArrayInputStream(flightStatsConnected, 0, flightStatsConnected.length);
ByteArrayOutputStream os = new ByteArrayOutputStream(100);
// Make the Status wrong initially
UAVObject obj = objMngr.getObject("FlightTelemetryStats");
obj.getField("Status").setValue("Disconnected");
// Test receiving from that stream
UAVTalk talk = new UAVTalk(is,os,objMngr);
Thread inputStream = talk.getInputProcessThread();
inputStream.start();
Thread.sleep(1000);
System.out.println("Should be FlightTelemetry Stats:");
System.out.println(objMngr.getObject("FlightTelemetryStats").toString());
assertEquals(obj.getField("Status").getValue(), new String("Connected"));
}
}

View File

@ -1,59 +0,0 @@
package org.openpilot.uavtalk;
import static org.junit.Assert.fail;
import java.io.IOException;
import java.net.InetAddress;
import java.net.Socket;
import org.junit.Test;
import org.openpilot.uavtalk.uavobjects.UAVObjectsInitialize;
import android.os.Looper;
public class TelemetryMonitorTest {
static UAVObjectManager objMngr;
static UAVTalk talk;
static final String IP_ADDRDESS = new String("127.0.0.1");
static final int PORT_NUM = 7777;
static Socket connection = null;
boolean succeed = false;
@Test
public void testTelemetry() throws Exception {
objMngr = new UAVObjectManager();
UAVObjectsInitialize.register(objMngr);
talk = null;
try{
InetAddress ip = InetAddress.getByName(IP_ADDRDESS);
connection = new Socket(ip, PORT_NUM);
} catch (Exception e) {
e.printStackTrace();
fail("Couldn't connect to test platform");
}
try {
talk = new UAVTalk(connection.getInputStream(), connection.getOutputStream(), objMngr);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
fail("Couldn't construct UAVTalk object");
}
Thread inputStream = talk.getInputProcessThread();
inputStream.start();
Looper.prepare();
Telemetry tel = new Telemetry(talk, objMngr, Looper.myLooper());
@SuppressWarnings("unused")
TelemetryMonitor mon = new TelemetryMonitor(objMngr,tel);
Thread.sleep(10000);
System.out.println("Done");
}
}

View File

@ -252,7 +252,7 @@ int main(int argc, char **argv)
QCoreApplication::applicationDirPath()+QLatin1String(SHARE_PATH));
// keep this in sync with the MainWindow ctor in coreplugin/mainwindow.cpp
QSettings settings(XmlConfig::XmlSettingsFormat, QSettings::UserScope,
QLatin1String("OpenPilot"), QLatin1String("OpenPilotGCS"));
QLatin1String("OpenPilot"), QLatin1String("OpenPilotGCS_config"));
overrideSettings(settings, argc, argv);
locale = settings.value("General/OverrideLanguage", locale).toString();

View File

@ -98,7 +98,7 @@ QString PathUtils::GetStoragePath()
{
// This routine works with "/" as the standard:
// Work out where the settings are stored on the machine
QSettings set(XmlConfig::XmlSettingsFormat, QSettings::UserScope,QLatin1String("OpenPilot"), QLatin1String("OpenPilotGCS"));
QSettings set(XmlConfig::XmlSettingsFormat, QSettings::UserScope,QLatin1String("OpenPilot"), QLatin1String("OpenPilotGCS_config"));
QFileInfo f(set.fileName());
QDir dir(f.absoluteDir());

View File

@ -3,6 +3,7 @@
#include <QDir>
#include <QSettings>
#include <utils/xmlconfig.h>
#include <QTimer>
importSettings::importSettings(QWidget *parent) :
QDialog(parent),
@ -11,6 +12,7 @@ importSettings::importSettings(QWidget *parent) :
ui->setupUi(this);
connect(ui->cbConfigs,SIGNAL(currentIndexChanged(int)),this,SLOT(updateDetails(int)));
connect(ui->btnLoad,SIGNAL(clicked()),this,SLOT(accept()));
QTimer::singleShot(500,this,SLOT(repaint()));
}
void importSettings::loadFiles(QString path)
{

View File

@ -102,11 +102,11 @@ MainWindow::MainWindow() :
m_additionalContexts(m_globalContext),
// keep this in sync with main() in app/main.cpp
m_settings(new QSettings(XmlConfig::XmlSettingsFormat, QSettings::UserScope,
QLatin1String("OpenPilot"), QLatin1String("OpenPilotGCS"), this)),
QLatin1String("OpenPilot"), QLatin1String("OpenPilotGCS_config"), this)),
m_globalSettings(new QSettings(XmlConfig::XmlSettingsFormat, QSettings::SystemScope,
QLatin1String("OpenPilot"), QLatin1String("OpenPilotGCS"), this)),
QLatin1String("OpenPilot"), QLatin1String("OpenPilotGCS_config"), this)),
m_settingsDatabase(new SettingsDatabase(QFileInfo(m_settings->fileName()).path(),
QLatin1String("OpenPilotGCS"),
QLatin1String("OpenPilotGCS_config"),
this)),
m_dontSaveSettings(false),
m_actionManager(new ActionManagerPrivate(this)),

View File

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>414</width>
<height>320</height>
<width>468</width>
<height>436</height>
</rect>
</property>
<property name="sizePolicy">
@ -19,216 +19,253 @@
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="margin">
<layout class="QVBoxLayout" name="verticalLayout_2">
<property name="leftMargin">
<number>12</number>
</property>
<property name="topMargin">
<number>0</number>
</property>
<property name="rightMargin">
<number>12</number>
</property>
<property name="bottomMargin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
<widget class="QScrollArea" name="scrollArea">
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
<property name="title">
<string>Workspaces</string>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Number of workspaces:</string>
</property>
</widget>
</item>
<item row="0" column="4">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>0</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
<string>Change details of workspace:</string>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QComboBox" name="workspaceComboBox"/>
</item>
<item row="0" column="2">
<widget class="QSpinBox" name="numberOfWorkspacesSpinBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>10</number>
</property>
<property name="value">
<number>2</number>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
<property name="widgetResizable">
<bool>true</bool>
</property>
<property name="title">
<string>Details</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="2" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Icon:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="Utils::PathChooser" name="iconPathChooser" native="true"/>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="nameEdit"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Name:</string>
</property>
</widget>
</item>
<item row="5" column="1">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item row="6" column="1">
<widget class="QLabel" name="label_4">
<property name="toolTip">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
<widget class="QWidget" name="scrollAreaWidgetContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>444</width>
<height>436</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QGroupBox" name="groupBox_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="title">
<string>Details</string>
</property>
<layout class="QGridLayout" name="gridLayout">
<item row="2" column="0">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Icon:</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="Utils::PathChooser" name="iconPathChooser" native="true"/>
</item>
<item row="3" column="1">
<widget class="QLineEdit" name="nameEdit"/>
</item>
<item row="3" column="0">
<widget class="QLabel" name="label_3">
<property name="text">
<string>Name:</string>
</property>
</widget>
</item>
<item row="5" column="1">
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>10</height>
</size>
</property>
</spacer>
</item>
<item row="6" column="1">
<widget class="QLabel" name="label_4">
<property name="toolTip">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Sans'; font-size:8pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;&quot;&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Note:&lt;/span&gt; A restart is needed for changes to number of workspaces to take effect.&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_3">
<property name="title">
<string>Workspace panel</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Placement:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QComboBox" name="comboBoxTabBarPlacement">
<property name="currentIndex">
<number>1</number>
</property>
<item>
<property name="text">
<string>Top</string>
</property>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<property name="text">
<string>Bottom</string>
</property>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox_3">
<property name="title">
<string>Workspace panel</string>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<item row="0" column="0">
<widget class="QLabel" name="label_6">
<property name="text">
<string>Placement:</string>
</property>
</widget>
</item>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>Allow reordering:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QCheckBox" name="checkBoxAllowTabMovement">
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
<item row="0" column="1">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QComboBox" name="comboBoxTabBarPlacement">
<property name="currentIndex">
<number>1</number>
</property>
<item>
<property name="text">
<string>Top</string>
</property>
</item>
<item>
<property name="text">
<string>Bottom</string>
</property>
</item>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>Allow reordering:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QCheckBox" name="checkBoxAllowTabMovement">
<property name="text">
<string/>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="title">
<string>Workspaces</string>
</property>
<layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0">
<widget class="QLabel" name="label">
<property name="text">
<string>Number of workspaces:</string>
</property>
</widget>
</item>
<item row="0" column="4">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>0</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
<string>Change details of workspace:</string>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QComboBox" name="workspaceComboBox"/>
</item>
<item row="0" column="2">
<widget class="QSpinBox" name="numberOfWorkspacesSpinBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>10</number>
</property>
<property name="value">
<number>2</number>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<customwidgets>

View File

@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>545</width>
<height>395</height>
<width>561</width>
<height>392</height>
</rect>
</property>
<property name="sizePolicy">
@ -20,725 +20,756 @@
<string>Form</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<property name="margin">
<number>0</number>
</property>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_12">
<item>
<widget class="QCheckBox" name="useOpenGL">
<property name="toolTip">
<string>Use OpenGL for rendering. Will lower CPU usage, depending on the capabilities of your graphics card, but might slightly alter the look &amp; feel of the dial.</string>
</property>
<property name="text">
<string>Use OpenGL</string>
</property>
</widget>
</item>
<item>
<widget class="QCheckBox" name="smoothUpdates">
<property name="toolTip">
<string>When checked, the Dial plugin will make needle moves smoother by simulating inertia.</string>
</property>
<property name="text">
<string>Smooth updates</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<widget class="QScrollArea" name="scrollArea">
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout" stretch="0,0,0,0">
<property name="spacing">
<number>10</number>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<property name="sizeConstraint">
<enum>QLayout::SetMaximumSize</enum>
<property name="widgetResizable">
<bool>true</bool>
</property>
<property name="bottomMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
<widget class="QWidget" name="scrollAreaWidgetContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>561</width>
<height>392</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="margin">
<number>0</number>
</property>
<property name="text">
<string>Dial SVG: </string>
</property>
</widget>
</item>
<item>
<widget class="Utils::PathChooser" name="svgSourceFile" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_28">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Dial font:</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="fontPicker">
<property name="text">
<string>Select...</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<widget class="QLabel" name="label_2">
<property name="text">
<string>BackgroundID</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="backgroundID">
<property name="toolTip">
<string>XML ID of the SVG source file used to display the dial background.</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string>ForegroundID</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="foregroundID">
<property name="toolTip">
<string>XML ID of the SVG source file used to display the dial foreground (above everything else, needles included).</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="QTabWidget" name="tabWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
<string>Indicator 1</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_5">
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_12">
<widget class="QLabel" name="label_2">
<property name="text">
<string>Movement:</string>
<string>BackgroundID</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="moveNeedle1"/>
</item>
<item>
<widget class="QLabel" name="label_5">
<property name="text">
<string>ID:</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="needle1ID">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<widget class="QLineEdit" name="backgroundID">
<property name="toolTip">
<string>XML ID of the SVG source file used to display the first needle/indicator.</string>
<string>XML ID of the SVG source file used to display the dial background.</string>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string>ForegroundID</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="foregroundID">
<property name="toolTip">
<string>XML ID of the SVG source file used to display the dial foreground (above everything else, needles included).</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<property name="topMargin">
<number>10</number>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_12">
<item>
<widget class="QLabel" name="label_6">
<widget class="QCheckBox" name="useOpenGL">
<property name="toolTip">
<string>Use OpenGL for rendering. Will lower CPU usage, depending on the capabilities of your graphics card, but might slightly alter the look &amp; feel of the dial.</string>
</property>
<property name="text">
<string>Min:</string>
<string>Use OpenGL</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle1Min">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
<widget class="QCheckBox" name="smoothUpdates">
<property name="toolTip">
<string>When checked, the Dial plugin will make needle moves smoother by simulating inertia.</string>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_7">
<property name="text">
<string>Max:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle1Max">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_10">
<property name="text">
<string>Factor:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="factor1">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>5</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
<string>Smooth updates</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_8">
<property name="text">
<string>DataObject</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="uavObject1">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_9">
<property name="text">
<string>ObjectField</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="objectField1">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_2">
<widget class="Line" name="line">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_2">
<attribute name="title">
<string>Indicator 2</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_6">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_6">
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_13">
<property name="text">
<string>Movement:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="moveNeedle2"/>
</item>
<item>
<widget class="QLabel" name="label_17">
<property name="text">
<string>ID:</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="needle2ID">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_7">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_18">
<property name="text">
<string>Min:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle2Min">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-10000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_19">
<property name="text">
<string>Max:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle2Max">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_11">
<property name="text">
<string>Factor:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="factor2">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>5</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_8">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_20">
<property name="text">
<string>DataObject</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="uavObject2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_21">
<property name="text">
<string>ObjectField</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="objectField2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_4">
<widget class="Line" name="line_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_3">
<attribute name="title">
<string>Indicator 3</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_7">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_9">
<item>
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_14">
<property name="text">
<string>Movement:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="moveNeedle3"/>
</item>
<item>
<widget class="QLabel" name="label_23">
<property name="text">
<string>ID:</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="needle3ID">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_10">
<property name="topMargin">
<number>10</number>
<widget class="QTabWidget" name="tabWidget">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<item>
<widget class="QLabel" name="label_24">
<property name="text">
<string>Min:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle3Min">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-10000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_25">
<property name="text">
<string>Max:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle3Max">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_15">
<property name="text">
<string>Factor:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="factor3">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>5</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_11">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_26">
<property name="text">
<string>DataObject</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="uavObject3">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_27">
<property name="text">
<string>ObjectField</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="objectField3">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_6">
<property name="orientation">
<enum>Qt::Horizontal</enum>
<property name="currentIndex">
<number>0</number>
</property>
<widget class="QWidget" name="tab">
<attribute name="title">
<string>Indicator 1</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_12">
<property name="text">
<string>Movement:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="moveNeedle1"/>
</item>
<item>
<widget class="QLabel" name="label_5">
<property name="text">
<string>ID:</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="needle1ID">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>50</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="toolTip">
<string>XML ID of the SVG source file used to display the first needle/indicator.</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_6">
<property name="text">
<string>Min:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle1Min">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_7">
<property name="text">
<string>Max:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle1Max">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_10">
<property name="text">
<string>Factor:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="factor1">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>5</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_8">
<property name="text">
<string>DataObject</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="uavObject1">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_9">
<property name="text">
<string>ObjectField</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="objectField1">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_2">
<attribute name="title">
<string>Indicator 2</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_6">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_6">
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_13">
<property name="text">
<string>Movement:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="moveNeedle2"/>
</item>
<item>
<widget class="QLabel" name="label_17">
<property name="text">
<string>ID:</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="needle2ID">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_7">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_18">
<property name="text">
<string>Min:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle2Min">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-10000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_19">
<property name="text">
<string>Max:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle2Max">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_11">
<property name="text">
<string>Factor:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="factor2">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>5</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_8">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_20">
<property name="text">
<string>DataObject</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="uavObject2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_21">
<property name="text">
<string>ObjectField</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="objectField2">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="tab_3">
<attribute name="title">
<string>Indicator 3</string>
</attribute>
<layout class="QVBoxLayout" name="verticalLayout_7">
<item>
<layout class="QHBoxLayout" name="horizontalLayout_9">
<item>
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QLabel" name="label_14">
<property name="text">
<string>Movement:</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="moveNeedle3"/>
</item>
<item>
<widget class="QLabel" name="label_23">
<property name="text">
<string>ID:</string>
</property>
</widget>
</item>
<item>
<widget class="QLineEdit" name="needle3ID">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_10">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_24">
<property name="text">
<string>Min:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle3Min">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-10000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_25">
<property name="text">
<string>Max:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="needle3Max">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>3</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_15">
<property name="text">
<string>Factor:</string>
</property>
</widget>
</item>
<item>
<widget class="QDoubleSpinBox" name="factor3">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="decimals">
<number>5</number>
</property>
<property name="minimum">
<double>-100000.000000000000000</double>
</property>
<property name="maximum">
<double>100000.000000000000000</double>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_11">
<property name="topMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label_26">
<property name="text">
<string>DataObject</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="uavObject3">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_27">
<property name="text">
<string>ObjectField</string>
</property>
</widget>
</item>
<item>
<widget class="QComboBox" name="objectField3">
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
</layout>
</item>
<item>
<widget class="Line" name="line_6">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout" stretch="0,0,0,0">
<property name="spacing">
<number>10</number>
</property>
<property name="sizeConstraint">
<enum>QLayout::SetMaximumSize</enum>
</property>
<property name="bottomMargin">
<number>10</number>
</property>
<item>
<widget class="QLabel" name="label">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Dial SVG: </string>
</property>
</widget>
</item>
<item>
<widget class="Utils::PathChooser" name="svgSourceFile" native="true">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_28">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Preferred">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Dial font:</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="fontPicker">
<property name="text">
<string>Select...</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<customwidgets>

Some files were not shown because too many files have changed in this diff Show More