mirror of
https://codeberg.org/Freeyourgadget/Gadgetbridge
synced 2024-06-01 19:06:06 +02:00
1328ce13e1
* Remove the dependency on PredefinedLocalMessage from generic fit parsing code * Standardize toString methods, omit types for known fields * Return null on unknown field number or names, instead of crashing * Map more Global FIT messages (device info, monitoring, sleep stages, sleep stats, stress level) * Prioritize "timestamp" over "253_timestamp" if specified explicitly in the global message definition * Introduce RecordData wrappers for each global message, allowing us to have proper types when getting data. If missing or unknown, the getter returns null. All classes are auto-generated by the FitCodeGen. * Persist a list of RecordData, instead of a Map from RecordDefinition * Fix parsing of compressed timestamps - keep them in computedTimestamp on each data record * Use timestamp16 if available in Monitoring records
103 lines
2.7 KiB
Java
103 lines
2.7 KiB
Java
package nodomain.freeyourgadget.gadgetbridge.service.devices.garmin.fit.messages;
|
|
|
|
import androidx.annotation.Nullable;
|
|
|
|
import nodomain.freeyourgadget.gadgetbridge.service.devices.garmin.fit.RecordData;
|
|
import nodomain.freeyourgadget.gadgetbridge.service.devices.garmin.fit.RecordDefinition;
|
|
import nodomain.freeyourgadget.gadgetbridge.service.devices.garmin.fit.RecordHeader;
|
|
|
|
//
|
|
// WARNING: This class was auto-generated, please avoid modifying it directly.
|
|
// See nodomain.freeyourgadget.gadgetbridge.service.devices.garmin.fit.codegen.FitCodeGen
|
|
//
|
|
public class FitDeviceSettings extends RecordData {
|
|
public FitDeviceSettings(final RecordDefinition recordDefinition, final RecordHeader recordHeader) {
|
|
super(recordDefinition, recordHeader);
|
|
|
|
final int globalNumber = recordDefinition.getGlobalFITMessage().getNumber();
|
|
if (globalNumber != 2) {
|
|
throw new IllegalArgumentException("FitFileId expects global messages of " + 2 + ", got " + globalNumber);
|
|
}
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getActiveTimeZone() {
|
|
return (Integer) getFieldByNumber(0);
|
|
}
|
|
|
|
@Nullable
|
|
public Long getUtcOffset() {
|
|
return (Long) getFieldByNumber(1);
|
|
}
|
|
|
|
@Nullable
|
|
public Long getTimeOffset() {
|
|
return (Long) getFieldByNumber(2);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getTimeMode() {
|
|
return (Integer) getFieldByNumber(4);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getTimeZoneOffset() {
|
|
return (Integer) getFieldByNumber(5);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getBacklightMode() {
|
|
return (Integer) getFieldByNumber(12);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getActivityTrackerEnabled() {
|
|
return (Integer) getFieldByNumber(36);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getMoveAlertEnabled() {
|
|
return (Integer) getFieldByNumber(46);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getDateMode() {
|
|
return (Integer) getFieldByNumber(47);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getDisplayOrientation() {
|
|
return (Integer) getFieldByNumber(55);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getMountingSide() {
|
|
return (Integer) getFieldByNumber(56);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getDefaultPage() {
|
|
return (Integer) getFieldByNumber(57);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getAutosyncMinSteps() {
|
|
return (Integer) getFieldByNumber(58);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getAutosyncMinTime() {
|
|
return (Integer) getFieldByNumber(59);
|
|
}
|
|
|
|
@Nullable
|
|
public Integer getBleAutoUploadEnabled() {
|
|
return (Integer) getFieldByNumber(86);
|
|
}
|
|
|
|
@Nullable
|
|
public Long getAutoActivityDetect() {
|
|
return (Long) getFieldByNumber(90);
|
|
}
|
|
}
|