forked from upstream-mirrors/OpenTracks
Move AltitudeCorrectionManager to TrackRecordingManager.
Part of #1187.
This commit is contained in:
@@ -21,6 +21,7 @@ import de.dennisguse.opentracks.data.models.Marker;
|
|||||||
import de.dennisguse.opentracks.data.models.Track;
|
import de.dennisguse.opentracks.data.models.Track;
|
||||||
import de.dennisguse.opentracks.data.models.TrackPoint;
|
import de.dennisguse.opentracks.data.models.TrackPoint;
|
||||||
import de.dennisguse.opentracks.sensors.sensorData.SensorDataSet;
|
import de.dennisguse.opentracks.sensors.sensorData.SensorDataSet;
|
||||||
|
import de.dennisguse.opentracks.services.handlers.AltitudeCorrectionManager;
|
||||||
import de.dennisguse.opentracks.services.handlers.TrackPointCreator;
|
import de.dennisguse.opentracks.services.handlers.TrackPointCreator;
|
||||||
import de.dennisguse.opentracks.settings.PreferencesUtils;
|
import de.dennisguse.opentracks.settings.PreferencesUtils;
|
||||||
import de.dennisguse.opentracks.stats.TrackStatistics;
|
import de.dennisguse.opentracks.stats.TrackStatistics;
|
||||||
@@ -31,9 +32,12 @@ class TrackRecordingManager implements SharedPreferences.OnSharedPreferenceChang
|
|||||||
|
|
||||||
private static final String TAG = TrackRecordingManager.class.getSimpleName();
|
private static final String TAG = TrackRecordingManager.class.getSimpleName();
|
||||||
|
|
||||||
|
private static final AltitudeCorrectionManager ALTITUDE_CORRECTION_MANAGER = new AltitudeCorrectionManager();
|
||||||
|
|
||||||
private final ContentProviderUtils contentProviderUtils;
|
private final ContentProviderUtils contentProviderUtils;
|
||||||
private final Context context;
|
private final Context context;
|
||||||
|
|
||||||
|
|
||||||
private Distance recordingDistanceInterval;
|
private Distance recordingDistanceInterval;
|
||||||
private Distance maxRecordingDistance;
|
private Distance maxRecordingDistance;
|
||||||
|
|
||||||
@@ -118,6 +122,8 @@ class TrackRecordingManager implements SharedPreferences.OnSharedPreferenceChang
|
|||||||
|
|
||||||
tmpTrackStatisticsUpdater.addTrackPoint(current.first);
|
tmpTrackStatisticsUpdater.addTrackPoint(current.first);
|
||||||
|
|
||||||
|
ALTITUDE_CORRECTION_MANAGER.correctAltitude(context, current.first);
|
||||||
|
|
||||||
Track track = contentProviderUtils.getTrack(trackId); //Get copy
|
Track track = contentProviderUtils.getTrack(trackId); //Get copy
|
||||||
if (track == null) {
|
if (track == null) {
|
||||||
Log.w(TAG, "Requesting data if not recording is taking place, should not be done.");
|
Log.w(TAG, "Requesting data if not recording is taking place, should not be done.");
|
||||||
|
|||||||
@@ -38,7 +38,6 @@ import de.dennisguse.opentracks.data.models.Track;
|
|||||||
import de.dennisguse.opentracks.data.models.TrackPoint;
|
import de.dennisguse.opentracks.data.models.TrackPoint;
|
||||||
import de.dennisguse.opentracks.sensors.sensorData.SensorDataSet;
|
import de.dennisguse.opentracks.sensors.sensorData.SensorDataSet;
|
||||||
import de.dennisguse.opentracks.services.announcement.VoiceAnnouncementManager;
|
import de.dennisguse.opentracks.services.announcement.VoiceAnnouncementManager;
|
||||||
import de.dennisguse.opentracks.services.handlers.AltitudeCorrectionManager;
|
|
||||||
import de.dennisguse.opentracks.services.handlers.GpsStatusValue;
|
import de.dennisguse.opentracks.services.handlers.GpsStatusValue;
|
||||||
import de.dennisguse.opentracks.services.handlers.TrackPointCreator;
|
import de.dennisguse.opentracks.services.handlers.TrackPointCreator;
|
||||||
import de.dennisguse.opentracks.util.SystemUtils;
|
import de.dennisguse.opentracks.util.SystemUtils;
|
||||||
@@ -91,8 +90,6 @@ public class TrackRecordingService extends Service implements TrackPointCreator.
|
|||||||
private VoiceAnnouncementManager voiceAnnouncementManager;
|
private VoiceAnnouncementManager voiceAnnouncementManager;
|
||||||
private TrackRecordingServiceNotificationManager notificationManager;
|
private TrackRecordingServiceNotificationManager notificationManager;
|
||||||
|
|
||||||
private AltitudeCorrectionManager egm2008CorrectionManager;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate() {
|
public void onCreate() {
|
||||||
super.onCreate();
|
super.onCreate();
|
||||||
@@ -104,7 +101,6 @@ public class TrackRecordingService extends Service implements TrackPointCreator.
|
|||||||
gpsStatusObservable = new MutableLiveData<>(STATUS_GPS_DEFAULT);
|
gpsStatusObservable = new MutableLiveData<>(STATUS_GPS_DEFAULT);
|
||||||
recordingDataObservable = new MutableLiveData<>(NOT_RECORDING);
|
recordingDataObservable = new MutableLiveData<>(NOT_RECORDING);
|
||||||
|
|
||||||
egm2008CorrectionManager = new AltitudeCorrectionManager();
|
|
||||||
trackRecordingManager = new TrackRecordingManager(this);
|
trackRecordingManager = new TrackRecordingManager(this);
|
||||||
trackRecordingManager.start();
|
trackRecordingManager.start();
|
||||||
trackPointCreator = new TrackPointCreator(this, this, handler);
|
trackPointCreator = new TrackPointCreator(this, this, handler);
|
||||||
@@ -130,8 +126,6 @@ public class TrackRecordingService extends Service implements TrackPointCreator.
|
|||||||
notificationManager.stop();
|
notificationManager.stop();
|
||||||
notificationManager = null;
|
notificationManager = null;
|
||||||
|
|
||||||
egm2008CorrectionManager = null;
|
|
||||||
|
|
||||||
voiceAnnouncementManager.stop();
|
voiceAnnouncementManager.stop();
|
||||||
voiceAnnouncementManager = null;
|
voiceAnnouncementManager = null;
|
||||||
|
|
||||||
@@ -304,16 +298,10 @@ public class TrackRecordingService extends Service implements TrackPointCreator.
|
|||||||
|
|
||||||
// Compute temporary track statistics using sensorData and update time.
|
// Compute temporary track statistics using sensorData and update time.
|
||||||
Pair<Track, Pair<TrackPoint, SensorDataSet>> data = trackRecordingManager.getDataForUI(trackPointCreator);
|
Pair<Track, Pair<TrackPoint, SensorDataSet>> data = trackRecordingManager.getDataForUI(trackPointCreator);
|
||||||
if (data == null) {
|
|
||||||
Log.w(TAG, "Requesting data if not recording is taking place, should not be done.");
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
TrackPoint trackPoint = data.second.first;
|
|
||||||
egm2008CorrectionManager.correctAltitude(this, trackPoint);
|
|
||||||
|
|
||||||
voiceAnnouncementManager.update(this, data.first);
|
voiceAnnouncementManager.update(this, data.first);
|
||||||
|
|
||||||
recordingDataObservable.postValue(new RecordingData(data.first, trackPoint, data.second.second));
|
recordingDataObservable.postValue(new RecordingData(data.first, data.second.first, data.second.second));
|
||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
|
|||||||
Reference in New Issue
Block a user