Commit graph

11 commits

Author SHA1 Message Date
Daniel Drake
c1f8581ec9 Cleanup discover_device in examples
Andrei Tchijov pointed out that the discover_device() function is written
in a strange way.
2007-12-01 13:00:33 +00:00
Daniel Drake
5485f8031d Return images through enroll/verify path
Added new API functions to obtain images, even when scans are bad, perhaps
a useful way to show the user just how good/bad the scan actually was.

Drivers and examples updated accordingly.
2007-11-15 09:54:39 +00:00
Daniel Drake
a86cd51959 Clean up on exit, and convert to singly-linked-lists
This adds fp_exit() to the public API, intended to be called while the
driving app is shutting down.
2007-11-15 09:54:38 +00:00
Daniel Drake
2709c6dc8c Basic image driver foundations
The basic model is that image drivers declare a fp_img_driver structure
rather than a fp_driver struct. fp_img_driver will contain primitive imaging
operations such as 'scan finger and return image'. The imgdev layer will
generically implement the primitive fp_driver operations, and the imgdev
layer will fix up the enroll/verify/etc pointers at driver registration
time.

Removed const from all fp_driver declarations, as these are now modified
dynamically in the case of imaging drivers.
2007-10-23 23:27:21 +01:00
Daniel Drake
680142f268 storage: add save/load functionality
Prints can now be saved to disk (but you currently must classify which
finger they are) and you can load them later.

Added 2 simple example programs to demonstrate this.
2007-10-16 14:34:22 +01:00
Daniel Drake
10bb96a0df Rename verify to verify_live
...to make way for an enroll example which stores on disk, and
a verify example that loads from disk.
2007-10-15 22:16:59 +01:00
Daniel Drake
68bdfc7868 Verification infrastructure
Similar model to enrollment.
2007-10-15 22:06:56 +01:00
Daniel Drake
39271b4fe5 Enrollment: improved error reporting
Convert enrollment function to return a signed integer, which is negative
on error or corresponds into fp_enroll_result otherwise.
Now we can treat a 'FAIL' condition differently from an actual error: fail
means that enrollment didn't complete because the data was nonsense or
whatever (e.g. scanned a different finger for each stage?).

Updated upekts accordingly.
2007-10-14 00:51:20 +01:00
Daniel Drake
50e2de0730 Enrollment tweaks
upekts will need to know when the first enrollment stage is attempted for
the first time, so add an __enroll_stage counter which actually indicates
the next stage to enroll. -1 is a special value and it means 0 is next *and*
it is the initial attemt.

Added more debug output to the enroll handler.
Added new fp_enroll_status codes for too short or uncentered scans.

Changed the print_data allocator to consider the device rather than the
driver, this feels more natural. Added missing return value.

Make fp_enroll_status codes start at 1. 0 can now be used as a
special/temporary value by the drivers. Also check that we aren't exceeding
the number of enroll stages.

Also add a missing exit() call to the verify example and update for the
above.
2007-10-13 15:51:33 +01:00
Daniel Drake
016ff33533 Enrolment infrastructure 2007-10-08 19:53:50 +01:00
Daniel Drake
f81aa47a19 Add 'verify' example skeleton
This will become an example program to enroll a fingerprint and then
verify a finger against it.
2007-10-08 17:37:33 +01:00