On Tue, Oct 28, 2014 at 12:38:08PM -0700, Linus Torvalds wrote:
On Tue, Oct 28, 2014 at 12:25 PM, Dirk Hohndel dirk@hohndel.org wrote:
So yes, let's figure out a sane way to hand data like that back to the application.
"So I think we might want to introduce an event type that literally gives two strings: a description and a value. And then subsurface can show that in an information window or something (maybe similarly to how we show the dive computer name - hover over the name, and get the dive computer "random data" fields"
So I literally suggest just "DC_SAMPLE_STRING", which comes with a structure that has two constant strings: the "descriptor" and the "value". Nothing else. No structure, no rules except for "strings for human consumption".
Is this per sample data or per dive date? So I think this is a DC_FIELD_STRING in libdivecomputer nomenclature.
For the battery thing, it could be
{ "Battery at start of dive", "Charge: 98%, Voltage: 4.157V" }
but it could also be things like
{ "Dive algorithm", "Suunto RGBM" }
or for things like the Uemis (if it were ever converted to libdivecomputer):
{ "Suit", "3-5mm wetsuit" }
Yes, this would be extremely useful and I have a number of backends that could take advantage of that - and I already have an idea how to present this in Subsurface. I coded this for the Uemis way back when in the Gtk days, so this will need to be redone, but getting description / value pairs and showing them in Subsurface would be very easy and very powerful.
And yes, this is MUCH better than the complicated deco types we have been discussing.
just to give a non-EON-Steel example. The point being that most modern dive computers have these kinds of random fields that it definitely isn't worth trying to organize a data structure for.
Yes. Agreed.
And then, subsurface could certainly try to match some strings (ie maybe we could catch that "suit" thing), but others it would just show in a popup when you hover over the dive computer name. Or add to the "Notes" window by default (although that would probably be annoying). Or something like that.
I wouldn't add them to notes. I'd create a separate UI area where such "structured data" can be shown as "additional info" or something like that.
/D