mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
pressure interpolation: further code simplification
With the two bigger simplications, this just re-organizes the code to do the "interpolate.pressure_time" update that is shared among all the "after segment start" cases in just one place. That leaves the get_pr_interpolate_data() much simpler, and makes it much clearer what it actually does. In particular, it becomes very obvious that "interpolate.pressure_time" is constant for one particular segment (it's the total pressure time), and that "interpolate.acc_pressure_time" is the one that gets updated for every entry. The next step is to only call this for the first entry, and then update just the "acc_pressure_time" in the caller. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
398cd5d9cc
commit
b71fc7ffb2
1 changed files with 4 additions and 9 deletions
|
@ -187,16 +187,11 @@ static struct pr_interpolate_struct get_pr_interpolate_data(pr_track_t *segment,
|
|||
|
||||
if (entry->sec < segment->t_start)
|
||||
continue;
|
||||
if (entry->sec >= segment->t_end) {
|
||||
interpolate.pressure_time += entry->pressure_time;
|
||||
break;
|
||||
}
|
||||
if (i <= cur) {
|
||||
interpolate.acc_pressure_time += entry->pressure_time;
|
||||
interpolate.pressure_time += entry->pressure_time;
|
||||
continue;
|
||||
}
|
||||
interpolate.pressure_time += entry->pressure_time;
|
||||
if (entry->sec >= segment->t_end)
|
||||
break;
|
||||
if (i <= cur)
|
||||
interpolate.acc_pressure_time += entry->pressure_time;
|
||||
}
|
||||
return interpolate;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue