1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2025-02-28 17:54:15 +01:00

GCS: New UAVObjectField::getTypeAsString() function is used for UAV Settings Export.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2864 ebee16cc-31ac-478f-84a7-5cbb03baadba
This commit is contained in:
osnwt 2011-02-23 20:27:05 +00:00 committed by osnwt
parent da18ee67b1
commit 606cc46ea1
3 changed files with 29 additions and 37 deletions

View File

@ -107,6 +107,33 @@ UAVObjectField::FieldType UAVObjectField::getType()
return type;
}
QString UAVObjectField::getTypeAsString()
{
switch (type)
{
case UAVObjectField::INT8:
return "int8";
case UAVObjectField::INT16:
return "int16";
case UAVObjectField::INT32:
return "int32";
case UAVObjectField::UINT8:
return "uint8";
case UAVObjectField::UINT16:
return "uint16";
case UAVObjectField::UINT32:
return "uint32";
case UAVObjectField::FLOAT32:
return "float32";
case UAVObjectField::ENUM:
return "enum";
case UAVObjectField::STRING:
return "string";
default:
return "";
}
}
QStringList UAVObjectField::getElementNames()
{
return elementNames;

View File

@ -47,6 +47,7 @@ public:
void initialize(quint8* data, quint32 dataOffset, UAVObject* obj);
UAVObject* getObject();
FieldType getType();
QString getTypeAsString();
QString getName();
QString getUnits();
quint32 getNumElements();

View File

@ -132,42 +132,6 @@ void UAVSettingsImportExportPlugin::importExport()
foreach (UAVObjectField* field, fieldList) {
QDomElement f = doc.createElement("field");
#ifndef EXPORT_VALUES_ONLY
QString type;
switch (field->getType()) {
// TODO: extend UAVObjectField class with getTypeString() member instead of this switch
case UAVObjectField::INT8:
type = "int8";
break;
case UAVObjectField::INT16:
type = "int16";
break;
case UAVObjectField::INT32:
type = "int32";
break;
case UAVObjectField::UINT8:
type = "uint8";
break;
case UAVObjectField::UINT16:
type = "uint16";
break;
case UAVObjectField::UINT32:
type = "uint32";
break;
case UAVObjectField::FLOAT32:
type = "float32";
break;
case UAVObjectField::ENUM:
type = "enum";
break;
case UAVObjectField::STRING:
type = "string";
break;
default:
type = "";
break;
}
#endif
// iterate over values
QString vals;
quint32 nelem = field->getNumElements();
@ -179,7 +143,7 @@ void UAVSettingsImportExportPlugin::importExport()
f.setAttribute("name", field->getName());
f.setAttribute("values", vals);
#ifndef EXPORT_VALUES_ONLY
f.setAttribute("type", type);
f.setAttribute("type", field->getTypeAsString());
f.setAttribute("units", field->getUnits());
f.setAttribute("elements", nelem);
#endif