summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
1268e0d)
At least the Suunto pressure transmitter seems to be pretty
"quantisized", and it will send identical samples for a while until the
pressure changes enough. Then subsurface gives this silly flat line
with a sudden jump downwards, which *could* be you suddenly taking a
deep breath after holding it for a while, but almost certainly it's a
sensor issue.
So just remove successive identical pressure readings. They aren't
interesting, and subsurface will actually do a good job of interpolating
it according to SAC rate instead. And they just make the XML look
worse.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
int i;
double depthtime = 0;
int lasttime = 0;
int i;
double depthtime = 0;
int lasttime = 0;
int start = -1, end = -1;
int maxdepth = 0, mintemp = 0;
int lastdepth = 0;
int start = -1, end = -1;
int maxdepth = 0, mintemp = 0;
int lastdepth = 0;
+ int lasttemp = 0, lastpressure = 0;
for (i = 0; i < dive->samples; i++) {
struct sample *sample = dive->sample + i;
int time = sample->time.seconds;
int depth = sample->depth.mm;
int temp = sample->temperature.mkelvin;
for (i = 0; i < dive->samples; i++) {
struct sample *sample = dive->sample + i;
int time = sample->time.seconds;
int depth = sample->depth.mm;
int temp = sample->temperature.mkelvin;
+ int pressure = sample->cylinderpressure.mbar;
+ int index = sample->cylinderindex;
+
+ /* Remove duplicate redundant pressure information */
+ if (pressure == lastpressure && index == lastindex)
+ sample->cylinderpressure.mbar = 0;
+
+ lastindex = index;
+ lastpressure = pressure;
if (lastdepth)
end = time;
if (lastdepth)
end = time;