Benjamin Berg
fab349f356
Remove trailing \n where they are not necessary
...
Adding a trailing \n to g_message, g_debug, g_warning and g_error is not
neccessary, as a newline will be added automatically by the logging
infrastructure.
2020-09-29 10:42:03 +02:00
Marco Trevisan (Treviño)
37b19674f1
verify: Use fast matching callback also for non-storage devices
2020-06-17 14:14:50 +02:00
Marco Trevisan (Treviño)
a5f4ad507a
img-capture: Exit with error if the device doesn't support capture
2020-06-17 14:12:43 +02:00
Marco Trevisan (Treviño)
1f96077e36
examples: Don't try to save an image from a print without it
...
A device may produce both prints with image data and not, so only do it
in the case the prints contains image data
2020-06-17 14:00:19 +02:00
Vasily Khoruzhick
fd2875aa3e
examples: add img-capture example
...
This one can be useful in scripts, e.g. for building fingerprint
dataset.
2020-06-13 09:20:28 -07:00
Benjamin Berg and Marco Trevisan
d2402309ee
examples: Cancel verify operation on Ctrl+C
...
This makes it easier to do basic testing of cancellation paths in the
drivers.
2020-04-24 18:40:48 +00:00
Benjamin Berg and Marco Trevisan
a651b65401
example: Cancel enroll operation on Ctrl+C
...
This makes it easier to do basic testing of cancellation paths in the
drivers.
2020-04-24 18:40:48 +00:00
Bastien Nocera
6bf29108a1
examples: Fix typo
2020-04-14 13:51:02 +02:00
Marco Trevisan (Treviño) and Benjamin Berg
5faf8498d9
compat: Use new GDate autoptr and define if needed
2020-02-10 11:41:40 +01:00
Marco Trevisan (Treviño)
cdcc476325
examples/verify: Prompt match/no-match report in callback
...
Promptly show the match/no-match result in the match callback instead of
waiting the verification process to be finished.
Also exit in case of an hard error, while permit to try again in case of a
retry error.
2020-01-17 19:44:52 +01:00
Marco Trevisan (Treviño)
456522397a
verify: Add match callback report
2020-01-16 20:24:42 +01:00
Marco Trevisan (Treviño)
30c783cbeb
examples: add FP_COMPONENT definitions
2020-01-16 14:37:07 +01:00
Marco Trevisan (Treviño)
078cea1709
verify: Add a verify_quit convenience function
...
It ends the loop if the device is not open, otherwise closes it and ends
the loop once done.
2020-01-16 14:36:41 +01:00
Marco Trevisan (Treviño)
bc8a5859e3
verify: Always close an open device before quitting the loop
2020-01-16 14:19:08 +01:00
Benjamin Berg
4d5c34e11a
Introduce an early reporting mechanism for verify and match
...
It is a good idea to report match results early, to e.g. log in a user
immediately even if more device interaction is needed. Add new _full
variants for the verify/identify functions, with a corresponding
callback. Also move driver result reporting into new
fpi_device_{identify,verify}_report functions and remove the reporting
from the fpi_device_{identify,verify}_complete calls.
Basic updates to code is done in places. Only the upekts driver is
actually modified from a behaviour point of view. The image driver code
should be restructured quite a bit to split the reporting and only
report completion after device deactivation. This should simplifiy the
code quite a bit again.
2020-01-13 14:37:39 +01:00
Benjamin Berg
87dee93633
examples: Do not re-prompt the finger when repeating verification
...
Let's assume the user will want to re-scan the same finger rather than
being prompted again to change it.
2020-01-08 18:14:06 +01:00
Benjamin Berg
516c1593bb
examples: Continue verification when return is pressed
...
The message says [Y/n], but will not do Y by default. Fix this.
2020-01-08 18:14:06 +01:00
Benjamin Berg
dcc7e6de90
examples: Save image even on match failure
...
Move the image saving out, so that it is always done when an image is
available. This allows viewing the image that corresponds to a match
failure.
2020-01-08 18:14:06 +01:00
Benjamin Berg
3c6ba0b678
storage: Do not free image data owned by FpPrint
...
The data returned by fp_print_get_image is owned by the FpPrint and
should not be free'ed.
2020-01-08 18:14:06 +01:00
Benjamin Berg
4db1b84c7a
examples: Do not free data returned by g_variant_get_fixed_array
...
This data is owned by the variant, so do not free it.
2020-01-08 18:14:06 +01:00
Benjamin Berg
36108f9f82
examples: Fix possible use-after-free in storage code
...
The variant may need the buffer, so we should only free the buffer
together with the variant.
2020-01-08 18:14:06 +01:00
Marco Trevisan (Treviño) and Benjamin Berg
c9e1a7f283
examples: Iterate through fingers via first/last refs
2019-12-18 12:23:14 +00:00
Marco Trevisan (Treviño)
2158c5e2d1
cleanup: Use #pragma once everywhere
...
Remove legacy header guards, and use compiler newer features.
2019-12-17 14:38:19 +01:00
Benjamin Berg and Benjamin Berg
113bef8f3f
examples: Fix double device closing in manage-prints
...
The manage-prints command would close the device twice when the user
hits an invalid number or 'n' and no prints need to be deleted.
Simply remove the erroneous call to fix the issue.
2019-12-16 10:20:49 +00:00
Marco Trevisan (Treviño)
24d388f923
meson: Split single-line dependencies to reduce the diff on changes
...
Make it more readable and in case we add something else, it's easier to track
2019-12-14 17:20:47 +01:00
Marco Trevisan (Treviño)
c3bf6fe863
meson: Rely on libfprint dependency to get root_include
...
No need to redefine it in all our tools
2019-12-12 18:55:08 +01:00
Marco Trevisan (Treviño)
1d48b70f38
storage: Include storage header so that we have declarations
2019-12-04 18:52:18 +01:00
Marco Trevisan (Treviño)
e64c18f8de
cpp-test: Fix indentation
2019-12-04 16:06:24 +01:00
Marco Trevisan (Treviño)
7e70344b4a
meson: Use add_project_arguments for common cflags
...
We were passing around the common cflags and setting them for each library
or executable, but this is just a repetition given we can just use
add_project_arguments for this.
2019-12-04 16:06:24 +01:00
Marco Trevisan (Treviño)
e7c7f368c9
drivers, examples: Don't use -Wno-pointer-sign and fix relative errors
2019-12-04 16:06:24 +01:00
Marco Trevisan (Treviño)
876924df6a
examples: Handle the cases where the print date is not set
2019-11-27 19:14:35 +01:00
Marco Trevisan (Treviño)
099fa9f005
meson: Use preferred syntax everywhere
...
Meson files are normally using 4-spaces to indent and functions use first
parameter on the same line while others at next indentation level, not
following the parenthesis indentation.
So adapt libfprint to follow the meson standard.
2019-11-25 18:59:46 +01:00
Marco Trevisan (Treviño)
76dd4066f3
verify: Ensure we set set the autoptr value to NULL at definition
2019-11-25 18:59:46 +01:00
Marco Trevisan (Treviño) and Benjamin Berg
1319daba54
examples: allow to select multiple devices
...
Since there might be external USB readers and embedded ones, better to allow
easily to select them all in examples.
2019-11-20 20:38:06 +01:00
Marco Trevisan (Treviño) and Benjamin Berg
39e3e2b794
examples: Move discover_device function to utilities
...
While there are various functions which similar usage in all the examples,
I'd prefer to keep each example to be self-containing most of the things.
However some clearly repeated action can be moved to a single codebase.
2019-11-20 20:38:06 +01:00
Marco Trevisan (Treviño) and Benjamin Berg
ab804f7f49
examples: Make possible to select the finger to enroll/verify
...
Move some common functions to an utilities file.
2019-11-20 20:38:06 +01:00
Marco Trevisan (Treviño) and Benjamin Berg
d1fb1e26f3
Uncrustify everything except for nbis
2019-11-20 20:38:06 +01:00
Benjamin Berg
cddd0f4653
examples: Remove old verify_live example
...
The example has not been ported and it is not very useful as verify
already shows how everything works.
2019-11-20 20:38:06 +01:00
Benjamin Berg
256c7cea07
examples: Remove x11 based examples
...
These examples have not been ported. In addition, they are also not very
useful these days, as the demo application offers a much nicer view to
view images from a sensor.
2019-11-20 20:38:06 +01:00
Marco Trevisan (Treviño) and Benjamin Berg
d91ec2d044
examples: Add manage-prints test to list and delete prints
...
Simple example program to list prints in a device with own storage and that
allow to delete them (by manual selection or full deletion).
2019-11-20 20:38:06 +01:00
Marco Trevisan (Treviño) and Benjamin Berg
b46d336d2b
examples: Add back examples using the async APIs
...
Add the examples back by using the new async API, support verification and
enroll for devices with own storage.
2019-11-20 13:53:44 +01:00
Benjamin Berg
dd40aeaa79
examples: Add sendvirtimg.py script to send a print to virtual_imgdev
...
With this script it is possible to test libfprint/fprintd without any
hardware device. The image needs to be provides as a PNG with the alpha
channel storing the print data.
See the comment in the file on how the script can be used.
2019-11-20 11:03:09 +01:00
Benjamin Berg and Marco Trevisan (Treviño)
9b175a7681
examples: Add PNGs for NIST example prints
...
These PNGs were generated using gimp simply by using the greyscale image
itself as an alpha mask. The reason to do this is solely for easier
consumption together with cairo A8 surfaces.
2019-11-19 21:07:58 +01:00
Benjamin Berg and Marco Trevisan (Treviño)
d67a801f1f
examples: Add a few example prints from NIST
...
These prints are from NIST and are not copyrighted. They were sourced
via wikipedia.
2019-11-19 21:07:58 +01:00
Benjamin Berg and Marco Trevisan (Treviño)
059fc5ef7d
examples: Disable existing examples
...
These examples will stop working with the following API changes. Updated
examples may be re-enabled again later.
2019-11-19 21:07:51 +01:00
Benjamin Berg
ec8dd6410e
build: Make glib a libfprint dependency
...
We are going to use GLib types in the public API now.
2019-11-18 15:39:35 +01:00
Benjamin Berg and Benjamin Berg
16875d7776
examples: Port enroll and verify examples to new storage
...
This ports the enroll and verify examples to the new storage so that
they do not need any deprecated API anymore.
2019-06-13 13:12:15 +00:00
Benjamin Berg and Benjamin Berg
a9600e23a1
examples: Link examples to the new GVariant based storage
...
For now just compile and link it, we do not yet use the new storage
code.
2019-06-13 13:12:15 +00:00
Benjamin Berg and Benjamin Berg
a4b6813ebf
examples: Add simple storage implementation using GVariant
...
This is useful so that the enroll and verify examples will not use the
deprecated API anymore.
2019-06-13 13:12:15 +00:00
Benjamin Berg
0a45ed7af6
data: Deprecate print storage API
...
The only API user currently seems to be the examples. fprintd has its
own storage and that will be a good idea in general.
So deprecate the API, we'll need to find a different solution for the
examples eventually.
2019-06-11 18:23:56 +02:00