Reset SF can now reset individual telemetry items (fix #161)

This commit is contained in:
Andre Bernet
2015-03-22 17:58:14 +04:00
parent 51500d4455
commit aced02f2bb
5 changed files with 48 additions and 8 deletions
+17
View File
@@ -453,6 +453,23 @@ int availableTelemetryIndex()
return -1;
}
int lastUsedTelemetryIndex()
{
for (int index=TELEM_VALUES_MAX-1; index>=0; index--) {
TelemetrySensor & telemetrySensor = g_model.telemetrySensors[index];
if (telemetrySensor.isAvailable()) {
return index;
}
}
return -1;
}
bool isSensorAvailableInResetSpecialFunction(int index)
{
TelemetrySensor & telemetrySensor = g_model.telemetrySensors[index-FUNC_RESET_PARAM_FIRST_TELEM];
return telemetrySensor.isAvailable();
}
void setTelemetryValue(TelemetryProtocol protocol, uint16_t id, uint8_t instance, int32_t value, uint32_t unit, uint32_t prec)
{
int index = getTelemetryIndex(protocol, id, instance);
+2
View File
@@ -185,6 +185,8 @@ inline bool isTelemetryFieldComparisonAvailable(int index)
void setTelemetryValue(TelemetryProtocol protocol, uint16_t id, uint8_t instance, int32_t value, uint32_t unit, uint32_t prec);
void delTelemetryIndex(uint8_t index);
int availableTelemetryIndex();
int lastUsedTelemetryIndex();
bool isSensorAvailableInResetSpecialFunction(int index);
int32_t getTelemetryValue(uint8_t index, uint8_t & prec);
int32_t convertTelemetryValue(int32_t value, uint8_t unit, uint8_t prec, uint8_t destUnit, uint8_t destPrec);