Skip to content

Commit 8018753

Browse files
0xDADstanis-k
authored andcommitted
NAVAND-6326: Adding perfetto markers for EHorizonObserver (#10534)
* Adding perfetto markers for EHorizonObserver * Fix performance tracking --------- Co-authored-by: Stanislav <[email protected]> GitOrigin-RevId: fb331526aa491f1a63b825bfb4b8f06cb999d6a1
1 parent acfd65c commit 8018753

File tree

1 file changed

+18
-13
lines changed

1 file changed

+18
-13
lines changed

navigation/src/main/java/com/mapbox/navigation/core/trip/session/eh/EHorizonSubscriptionManagerImpl.kt

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.mapbox.navigation.core.trip.session.eh
22

33
import com.mapbox.navigation.base.internal.factory.EHorizonFactory
4+
import com.mapbox.navigation.base.internal.performance.PerformanceTracker
45
import com.mapbox.navigation.base.trip.model.eh.EHorizonPosition
56
import com.mapbox.navigation.base.trip.model.roadobject.distanceinfo.RoadObjectDistanceInfo
67
import com.mapbox.navigation.navigator.internal.MapboxNativeNavigator
@@ -47,17 +48,19 @@ internal class EHorizonSubscriptionManagerImpl(
4748
distances: MutableList<com.mapbox.navigator.RoadObjectDistance>,
4849
) {
4950
mainJobController.scope.launch {
50-
val eHorizonPosition = EHorizonFactory.buildEHorizonPosition(position)
51-
val eHorizonDistances = mutableListOf<RoadObjectDistanceInfo>()
52-
distances.forEach {
53-
eHorizonDistances.add(EHorizonFactory.buildRoadObjectDistance(it))
54-
}
55-
56-
currentPosition = eHorizonPosition
57-
currentDistances = eHorizonDistances
58-
59-
notifyAllObservers {
60-
onPositionUpdated(eHorizonPosition, eHorizonDistances)
51+
PerformanceTracker.trackPerformanceSync("EHorizon.onPositionUpdated") {
52+
val eHorizonPosition = EHorizonFactory.buildEHorizonPosition(position)
53+
val eHorizonDistances = mutableListOf<RoadObjectDistanceInfo>()
54+
distances.forEach {
55+
eHorizonDistances.add(EHorizonFactory.buildRoadObjectDistance(it))
56+
}
57+
58+
currentPosition = eHorizonPosition
59+
currentDistances = eHorizonDistances
60+
61+
notifyAllObservers {
62+
onPositionUpdated(eHorizonPosition, eHorizonDistances)
63+
}
6164
}
6265
}
6366
}
@@ -138,8 +141,10 @@ internal class EHorizonSubscriptionManagerImpl(
138141

139142
private fun notifyAllObservers(action: suspend EHorizonObserver.() -> Unit) {
140143
mainJobController.scope.launch {
141-
eHorizonObservers.forEach {
142-
it.action()
144+
PerformanceTracker.trackPerformanceSync("EHorizon.notifyAllObservers") {
145+
eHorizonObservers.forEach {
146+
it.action()
147+
}
143148
}
144149
}
145150
}

0 commit comments

Comments
 (0)