This commit is contained in:
bsongis
2015-07-13 08:35:10 +02:00
parent 5c3cfd9cdd
commit 385536ab73
4 changed files with 20 additions and 7 deletions
+2 -1
View File
@@ -951,10 +951,11 @@ class SensorData {
bool filter;
bool logs;
bool persistent;
bool onlyPositive;
// for custom sensors
unsigned int ratio;
unsigned int offset;
int offset;
// for consumption
unsigned int amps;
@@ -2801,7 +2801,8 @@ class SensorField: public TransformedField {
internalField.Append(new BoolField<1>(sensor.filter));
internalField.Append(new BoolField<1>(sensor.logs));
internalField.Append(new BoolField<1>(sensor.persistent));
internalField.Append(new SpareBitsField<4>());
internalField.Append(new BoolField<1>(sensor.onlyPositive));
internalField.Append(new SpareBitsField<3>());
internalField.Append(new UnsignedField<32>(_param, "param"));
}
@@ -2810,7 +2811,7 @@ class SensorField: public TransformedField {
if (sensor.type == SensorData::TELEM_TYPE_CUSTOM) {
_id = sensor.id;
_instance = sensor.instance;
_param = (sensor.ratio) + (sensor.offset << 16);
_param = (sensor.ratio) + ((unsigned int)sensor.offset << 16);
}
else {
_id = sensor.persistentValue;
@@ -2831,8 +2832,8 @@ class SensorField: public TransformedField {
if (sensor.type == SensorData::TELEM_TYPE_CUSTOM) {
sensor.id = _id;
sensor.instance = _instance;
sensor.ratio = _param & 0xFF;
sensor.offset = (_param >> 16) & 0xFF;
sensor.ratio = _param & 0xFFFF;
sensor.offset = (_param >> 16) & 0xFFFF;
}
else {
sensor.persistentValue = _id;
+1
View File
@@ -481,6 +481,7 @@ TelemetrySensorPanel::TelemetrySensorPanel(QWidget *parent, SensorData & sensor,
ui->filter->setField(sensor.filter);
ui->logs->setField(sensor.logs);
ui->persistent->setField(sensor.persistent);
ui->onlyPositive->setField(sensor.onlyPositive);
ui->gpsSensor->setField(sensor.gps);
ui->altSensor->setField(sensor.alt);
ui->ampsSensor->setField(sensor.amps);
+12 -2
View File
@@ -13,7 +13,7 @@
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QHBoxLayout" name="horizontalLayout" stretch="0,1,0,0,0,1,1,1,1,0,0,1,0,1,0,1,1,1,1,1,1,0,1,0,0,1,0,0,1,0,0,0,0">
<layout class="QHBoxLayout" name="horizontalLayout" stretch="0,1,0,0,0,1,1,1,1,0,0,1,0,1,0,1,1,1,1,1,1,0,1,0,0,1,0,0,1,0,0,0,0,0">
<property name="leftMargin">
<number>0</number>
</property>
@@ -541,7 +541,7 @@
<double>0.000000000000000</double>
</property>
<property name="maximum">
<double>3000.000000000000000</double>
<double>65535.000000000000000</double>
</property>
</widget>
</item>
@@ -617,6 +617,16 @@
</property>
</widget>
</item>
<item>
<widget class="AutoCheckBox" name="onlyPositive">
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="text">
<string>Positive</string>
</property>
</widget>
</item>
<item>
<widget class="AutoCheckBox" name="logs">
<property name="layoutDirection">