RFC: PSCR dive plots: Part 2.

Willem Ferguson willemferguson at zoology.up.ac.za
Mon Mar 12 07:58:44 PDT 2018


I am slowly working towards providing for bailout in the dive profile 
display. There are a few decisions that need to be made and I would 
appreciate any comment.

1) Recording bailout events by dive computers:

On Shearwater, each dive sample has a boolean that indicates whether the 
sample was during Loop or during Bailout. At the moment this boolean is 
not exposed by libdivecomputer, but Jef and myself are having 
discussions about making this information available in the API. I only 
have access to Shearwater equipment. According to Jef the 
Ratio/DiveSystem and DiveRite Nitek Q have similar systems of recording 
bailout, while H-W records discete events. Obviously, if one implements 
bailout, one would like to do it in a way that is as compatible with 
what most dive computers do. Anyone using other hardware for ccr/pscr, 
please comment on how your computer handles bailout events while 
logging? Given the system for Shearwater, Ratio, etc, it is unavoidable 
that an additional byte would be needed in the sample structure.

2) Showing bailout events in the Subsurface dive profile. This would 
have two aspects.

     a) Indicating bailout with an icon on the dive profile. The 
inclusion of appropriate events is by far the easiest way to implement 
this. Currently the dive events are closely tied to the libdivecomputer 
events, so this is somewhat limiting.

     b) Adapting the gas partial pressure graphs to reflect what the 
diver breathes during bailout. When rendering the dive by creating a 
plot_info structure for each sample, the easiest mechanism of 
incorporating bailout would be to use the Shearwater approach: have a 
byte indicating Loop or Bailout and perform the appropriate calculation 
for gas partial pressures. Alternatively, it may be possible to 
reference the linked list of existing events, find the next bailout 
event and plot the pO2 depending on the type of bailout event (i.e. 
Bailout or OC->Loop). But this would incur significantly more 
computational overhead since this lookup will be needed for each 
plot_info on the dive profile.

What worries me about the above is that it uses a dual system (events as 
well as sample-wise boolean values).

Is this approach too complex?

Kind regards,

willem


-- 
This message and attachments are subject to a disclaimer.
Please refer to 
http://upnet.up.ac.za/services/it/documentation/docs/004167.pdf for full 
details.


More information about the subsurface mailing list