diff options
Diffstat (limited to 'test-runner/src')
| -rw-r--r-- | test-runner/src/main/kotlin/org/terst/nav/track/TrackRepository.kt | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/test-runner/src/main/kotlin/org/terst/nav/track/TrackRepository.kt b/test-runner/src/main/kotlin/org/terst/nav/track/TrackRepository.kt index 7953822..85dd2dd 100644 --- a/test-runner/src/main/kotlin/org/terst/nav/track/TrackRepository.kt +++ b/test-runner/src/main/kotlin/org/terst/nav/track/TrackRepository.kt @@ -5,22 +5,28 @@ class TrackRepository { var isRecording: Boolean = false private set - private val points = mutableListOf<TrackPoint>() + private val activePoints = mutableListOf<TrackPoint>() + private val pastTracks = mutableListOf<List<TrackPoint>>() fun startTrack() { - points.clear() + activePoints.clear() isRecording = true } fun stopTrack() { + if (isRecording && activePoints.isNotEmpty()) { + pastTracks.add(activePoints.toList()) + } isRecording = false } fun addPoint(point: TrackPoint): Boolean { if (!isRecording) return false - points.add(point) + activePoints.add(point) return true } - fun getPoints(): List<TrackPoint> = points.toList() + fun getPoints(): List<TrackPoint> = activePoints.toList() + + fun getPastTracks(): List<List<TrackPoint>> = pastTracks.toList() } |
