Jef Driesen
550e37d0b5
Remove the page, packet and memory size macros from the public api.
...
These macros are used internally and don't need to be exposed. In some
cases, the actual values are not even constant, but dependant on the
model and/or the firmware version.
2012-12-05 16:07:32 +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
38c7b022cd
Integrate the context object in the serial code.
2012-08-27 23:08:38 +02:00
Jef Driesen
53e9d72a40
Integrate the context object in the library.
...
The public api is changed to require a context object for all
operations. Because other library objects store the context pointer
internally, only the constructor functions need an explicit context
object as a parameter.
2012-08-27 23:08:38 +02:00
Jef Driesen
3df5cb09d7
Require a serial handle for the sleep function.
2012-08-27 23:02:44 +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
163d383332
Use a common backend type for the device and parser layers.
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
e65025b501
Separate private and public headers.
...
The public header files are moved to a new subdirectory, to separate
the definition of the public interface from the actual implementation.
Using an identical directory layout as the final installation has the
advantage that the example code can be build outside the project tree
without any modifications to the #include statements.
2012-06-21 21:39:24 +02:00
Jef Driesen
887d744e6d
Use a more consistent typedef in the serial and irda backends.
2010-10-04 23:08:39 +02:00
Jef Driesen
4e5c9ad8a3
Remove all debugging code.
2010-05-06 06:21:59 +00:00
Jef Driesen
4b590ba5e2
Pass the fingerprint data to the callback function.
2010-02-04 10:46:42 +00:00
Jef Driesen
fab15b19a7
Add a clock synchronization event.
2010-02-01 21:20:30 +00:00
Jef Driesen
b392a49045
Update the code to use the new datetime support.
2010-02-01 21:20:11 +00:00
Jef Driesen
a49d2c7b36
Changed the device_dump() function to use the new memory buffer class.
...
Using a resizable memory buffer allows to allocate the right amount of
memory inside the backend, avoiding having to know the required buffer
size in advance.
2009-11-10 11:36:10 +00:00
Jef Driesen
b59532fffb
Fixed some compiler warnings related to unused variables.
2009-11-02 13:14:42 +00:00
Jef Driesen
a4247b7505
Define the WARNING macro only once.
2009-08-06 14:15:52 +00:00
Jef Driesen
be2a27c58b
Remove the handshake function from the public api.
2009-04-14 21:37:39 +00:00
Jef Driesen
572dfa5184
Add a function to retrieve the stored handshake packet.
2009-04-14 21:37:04 +00:00
Jef Driesen
67363ea05c
Store the handshake packet in the device handle.
2009-04-14 21:36:44 +00:00
Jef Driesen
aa7599929e
Wake-up the device automatically.
...
The backend is now in full control of the handshake sequence and does
automatically wake-up the device at the appropriate time.
2009-04-14 21:36:28 +00:00
Jef Driesen
c1745cc535
Merge the typedef with the struct declaration.
2009-04-06 07:26:16 +00:00
Jef Driesen
5cb754b01b
Store the clock calibration values in the device handle.
2009-03-11 15:02:49 +00:00
Jef Driesen
ce705f8244
Use the new byte order functions everywhere.
2009-03-11 10:18:28 +00:00
Jef Driesen
ebfd5b4b1a
Always use the timestamp stored in the device handle.
2009-03-11 08:48:29 +00:00
Jef Driesen
11dc4715a4
Add fingerprint support for the Reefnet Sensus Original, Pro and Ultra.
2009-02-23 13:03:52 +00:00
Jef Driesen
4368b94ff0
Added basic support for the fingerprint feature.
2009-02-23 13:03:20 +00:00
Jef Driesen
64e3f4b4bf
Add a device info event for the Reefnet Sensus Original, Pro and Ultra.
2009-02-20 12:25:25 +00:00
Jef Driesen
3ce6a725a9
Port the Reefnet Sensus Original, Pro and Ultra to the new event code.
2009-02-20 12:11:38 +00:00
Jef Driesen
eb9efb47e1
Check the length of the provided buffer space before the data transfer.
2009-02-11 10:43:44 +00:00
Jef Driesen
b434fa344b
Fixed some warnings related to shadow variables.
2009-01-06 21:44:25 +00:00
Jef Driesen
596af5a17b
Add LGPL license headers.
2008-10-05 20:14:18 +00:00
Jef Driesen
276f45acd2
Allow the library to be compiled as C++ code.
...
Moved the initialization of the backend pointers to the beginning of the
source file. Without the need for a tentative definition, the library
can be compiled with a C++ compiler.
2008-09-03 10:16:35 +00:00
Jef Driesen
dfeea21c36
Add explicit casts to improve type safety.
2008-09-03 08:51:07 +00:00
Jef Driesen
599827d5a3
Improve the type safety by using the device_status_t enum.
2008-09-03 08:46:21 +00:00
Jef Driesen
b031d8dc2c
Stop abusing status codes to return size information to the application.
...
When necessary, an output parameter is added to provide the size
information. Status codes are strictly reserved for providing status
information only.
2008-08-28 09:07:09 +00:00
Jef Driesen
b3c1de2336
Implemented progress notifications for the Reefnet Sensus Pro.
2008-08-19 11:18:17 +00:00
Jef Driesen
f467f4fd8d
Automatically abort when a dive is older than the provided timestamp.
2008-08-14 10:30:33 +00:00
Jef Driesen
7c03ddcb15
Moved all the checksum functions to a common file.
2008-07-30 08:56:08 +00:00
Jef Driesen
eee1c4cd74
Fixed a bug in the previous commit.
...
The dump() function returns the size of the downloaded data, not a
status code.
2008-07-29 18:13:03 +00:00
Jef Driesen
44e76cfa8e
Implement the device_foreach() function on top of device_dump().
2008-07-22 07:57:00 +00:00
Jef Driesen
16b14e55ef
Allow to abort a transfer by returning FALSE from the callback.
2008-07-22 05:35:08 +00:00
Jef Driesen
4f63295802
Add a function to initialize the base class.
2008-07-22 05:31:26 +00:00
Jef Driesen
eaf10b59da
Rename the device_download() function to device_dump().
...
The new name makes it more clear that it's not the recommended function
to download data.
2008-07-17 05:25:53 +00:00
Jef Driesen
d12a44c458
Always return the size of the downloaded data.
2008-07-10 08:10:04 +00:00
Jef Driesen
9548565220
Port the Reefnet Sensus Pro to the new api.
2008-07-07 12:48:47 +00:00
Jef Driesen
4142431b36
Always return an error code if the supplied memory buffer is too small.
2008-06-15 18:18:22 +00:00
Jef Driesen
2d88237949
Simplified the exitcode macro.
2008-06-15 12:51:38 +00:00
Jef Driesen
0312351bac
Reorganization to separate the library and the test applications.
2008-06-04 13:30:55 +00:00