17 Commits

Author SHA1 Message Date
Florian Klink
fc008312b5 Remove trailing whitespaces
Most of them appear in the disclaimers, but some are in the code as
well.
2014-03-19 09:16:07 +01:00
Jef Driesen
007479fc92 Rename the backend structure to vtable.
The term "backend" can be confusing because it can refer to both the
virtual function table and the device/parser backends. The use of the
term "vtable" avoids this.
2013-04-16 12:18:53 +02:00
Jef Driesen
d0b7f2e584 Move the version string to the common device structure.
The version string can be shared by all three backends, which will make
it easier to use the version data directly from the common code.
2012-12-26 08:31:31 +01:00
Jef Driesen
0ae6274939 Simplify the version matching logic.
The hardcoded version strings are now grouped into arrays, according to
their corresponding layout descriptor. The main advantage of using
arrays is that new versions strings can now easily be added, without
having to modify any code.
2012-12-22 21:25:52 +01:00
Jef Driesen
cd31ff9dff Properly store the context pointer internally.
I forgot to update the device and parser initialization functions to
store the context pointer into the objects. As a result, the internal
context pointers were always NULL.
2012-08-28 08:44:47 +02:00
Jef Driesen
c821d40144 Introduce a namespace prefix for the high-level public api.
Adding the "dc_" namespace prefix (which is of course an abbreviation
for libdivecomputer) should avoid conflicts with other libraries. For
the time being, only the high-level device and parser layers are
changed.
2012-06-21 21:42:37 +02:00
Jef Driesen
9136a52835 Use common status codes for the device and parser layers. 2012-06-21 21:42:34 +02:00
Jef Driesen
0a6e0d93a8 Add support for the Aeris F10. 2012-04-23 21:37:02 +02:00
Jef Driesen
5ae0e37d1f Remove the hardcoded logbook entry size. 2012-04-23 21:37:02 +02:00
Jef Driesen
e87385850b Use independent settings for the global and logbook pointer modes. 2010-04-27 11:33:29 +00:00
Jef Driesen
419d5a55d5 Autodetect the correct layout at runtime. 2010-03-15 11:08:40 +00:00
Jef Driesen
898f27ad2e Use multipage reads for downloading dives too. 2010-01-22 13:42:16 +00:00
Jef Driesen
45f51fedfb Store the layout descriptor in the device handle. 2010-01-15 10:16:49 +00:00
Jef Driesen
32fd37df2c Keep only a single PAGESIZE macro. 2010-01-15 09:51:15 +00:00
Jef Driesen
407ff06fb9 Improve the empty ringbuffer detection.
The logbook ringbuffer is now considered empty if any of the pointers is
outside the valid ringbuffer area. Compared to checking only against a
special empty value, this approach makes the code more robust against
invalid pointers.
2009-10-20 13:43:07 +00:00
Jef Driesen
f0b3253296 Add a common base class.
Introducing a common base class allows to share more code between the
backends. Sharing the fingerprint data eliminates the need to pass it
with a function parameter.
2009-05-05 13:20:11 +00:00
Jef Driesen
6132ae2550 Share the parsing code between the backends.
The memory layout of all Oceanic devices is very similar, which allows
to share the parsing code between the different backends. Differences in
the layout are passed by means of a new layout descriptor structure.
Memory buffers are now allocated dynamically to support devices with
different amounts of memory.
2009-05-04 09:03:04 +00:00