From 95337c71cdea9460e0a27f49b4f06cd36a746e1b Mon Sep 17 00:00:00 2001 From: Vincent Huang Date: Tue, 11 Jun 2019 10:44:07 +0200 Subject: [PATCH] lib: Add API to query support for device internal storage This is useful as these devices may require extra work by API users, such as also deleting prints from the device when deleting them from the local storage. --- libfprint/fpi-core.c | 17 +++++++++++++++++ libfprint/fprint.h | 2 ++ 2 files changed, 19 insertions(+) diff --git a/libfprint/fpi-core.c b/libfprint/fpi-core.c index 004235ea..c9f35ade 100644 --- a/libfprint/fpi-core.c +++ b/libfprint/fpi-core.c @@ -757,6 +757,23 @@ API_EXPORTED int fp_dev_supports_identification(struct fp_dev *dev) return dev->drv->identify_start != NULL; } +/** + * fp_dev_supports_data_in_sensor: + * @dev: the struct #fp_dev device + * + * Determines if a device is capable of storing print data in sensor. + * Not all devices support this functionality. + * + * Returns: 1 if the device is capable of storing data in sensor, 0 otherwise. + */ +API_EXPORTED int fp_dev_supports_data_in_sensor(struct fp_dev *dev) +{ + g_return_val_if_fail(dev, 0); + g_return_val_if_fail(dev->drv, 0); + + return dev->drv->delete_finger != NULL; +} + /** * fp_dev_get_img_width: * @dev: the struct #fp_dev device diff --git a/libfprint/fprint.h b/libfprint/fprint.h index 1f7a06ea..ef4fa39c 100644 --- a/libfprint/fprint.h +++ b/libfprint/fprint.h @@ -267,6 +267,8 @@ int fp_verify_finger(struct fp_dev *dev, struct fp_print_data *enrolled_print); int fp_dev_supports_identification(struct fp_dev *dev); +int fp_dev_supports_data_in_sensor(struct fp_dev *dev); + int fp_identify_finger_img(struct fp_dev *dev, struct fp_print_data **print_gallery, size_t *match_offset, struct fp_img **img);