Skip to content

Commit 8ddccae

Browse files
authored
Fix CGGTTS, reset the tracker after it is released. (#289)
1 parent 03d6a49 commit 8ddccae

File tree

1 file changed

+14
-15
lines changed
  • rinex-cli/src/positioning/cggtts

1 file changed

+14
-15
lines changed

rinex-cli/src/positioning/cggtts/mod.rs

+14-15
Original file line numberDiff line numberDiff line change
@@ -256,6 +256,16 @@ pub fn resolve<'a, 'b, CK: ClockStateProvider, O: OrbitSource>(
256256

257257
// TODO: RTK
258258
//candidate.set_remote_observations(remote);
259+
let target = &(*sv, observable.clone());
260+
261+
let tracker = match trackers.get_mut(target) {
262+
None => {
263+
// initialize new tracker
264+
trackers.insert((*sv, observable.clone()), SVTracker::default());
265+
trackers.get_mut(target).unwrap()
266+
},
267+
Some(tracker) => tracker,
268+
};
259269

260270
match solver.resolve(*t, &vec![candidate]) {
261271
Ok((t, pvt_solution)) => {
@@ -297,18 +307,6 @@ pub fn resolve<'a, 'b, CK: ClockStateProvider, O: OrbitSource>(
297307
elevation,
298308
};
299309

300-
let target = &(*sv, observable.clone());
301-
302-
let tracker = match trackers.get_mut(target) {
303-
None => {
304-
// initialize new tracker
305-
trackers
306-
.insert((*sv, observable.clone()), SVTracker::default());
307-
trackers.get_mut(target).unwrap()
308-
},
309-
Some(tracker) => tracker,
310-
};
311-
312310
// // verify buffer continuity
313311
// if !tracker.no_gaps(dominant_sampling_period) {
314312
// // on any discontinuity we need to reset
@@ -398,9 +396,6 @@ pub fn resolve<'a, 'b, CK: ClockStateProvider, O: OrbitSource>(
398396
// TODO: most likely we should reset the SV signal tracker here
399397
},
400398
} //.fit()
401-
402-
// reset so we start a new track
403-
tracker.reset();
404399
}
405400
// time to release a track
406401
else {
@@ -423,6 +418,10 @@ pub fn resolve<'a, 'b, CK: ClockStateProvider, O: OrbitSource>(
423418
// }
424419
},
425420
} //.pvt resolve
421+
// after release, reset so we start a new track
422+
if should_release {
423+
tracker.reset();
424+
}
426425
} // for all OBS
427426
} //.sv()
428427
}

0 commit comments

Comments
 (0)