[PATCH] Added support for parsing temperature in the dive header

Dirk Hohndel dirk at hohndel.org
Wed Sep 3 15:07:50 PDT 2014


On Thu, Sep 04, 2014 at 09:22:08AM +1200, Nick Shore wrote:
> Ultimately I think I would prefer a consistent api. That said, currently I have custom parsers as I extract a little extra info in most cases. The Cobalt tanks are a good example of that. So while I say a consistent api, I'm doing something completely different in practice. In a perfect world, the application wouldn't need to handle anything manufacturer/model specific. If you could query whether information was available for a certain brand or model, then that would help.
> 
> Certainly I get a lot of people asking why the manufacturer software shows X, and where is that in MacDive? I've seen the "fake" pressure graphs you're talking about, and that trips users up. This particular case I'd say is pointless at best, and misleading at worst. I think that information is best not displayed. I don't think that libdc should be trying to fake this information at all if it is ending up with data that is in no way accurate.
> 
> I do agree with you Dirk that if enough devices support a particular feature then perhaps it's worth adding. As long as there's a convenient way for an application to say "does this model include heart rate information?" then I think it can be included in a way that applications can handle it nicely. I guess I straddle the middle ground, as I do have custom parsers so that I can extract some info that isn't currently handled by libdc, but would ultimately like to not have to maintain them.
> 
> I trust that this has not helped in any way :)

I think it helped very much.

Here's what I learned from your response:

- MacDive, just like Subsurface, ended up implementing custom parsers for
  information that isn't extracted by libdivecomputer.
- MacDive, just like Subsurface, would prefer to get such data from 
  libdivecomputer, as long as it is easy to tell if the data is available
  or not - so no made up, interpolated or otherwise fabricated data.
  Either an indication "the data aren't available", or actual data from
  the dive computer.


/D


More information about the devel mailing list