6209b22e3b
The FPI_MATCH_ERROR constant was set to 0, however it is propagated to the task completion using g_task_propagate_int. As g_task_propagate_int will always return -1 on error, we either need to add an explicit -1 check or we just need to match the semantics. Change the constant to -1, also rearange FP_MATCH_SUCCESS so that it does not end up being 0.
50 lines
1.4 KiB
C
50 lines
1.4 KiB
C
#pragma once
|
|
|
|
#include "fpi-enums.h"
|
|
#include "fp-device.h"
|
|
#include "fp-print.h"
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
/**
|
|
* FpPrintType:
|
|
* @FP_PRINT_UNDEFINED: Undefined type, this happens prior to enrollment
|
|
* @FP_PRINT_RAW: A raw print where the data is directly compared
|
|
* @FP_PRINT_NBIS: NBIS minutiae comparison
|
|
*/
|
|
typedef enum {
|
|
FP_PRINT_UNDEFINED = 0,
|
|
FP_PRINT_RAW,
|
|
FP_PRINT_NBIS,
|
|
} FpPrintType;
|
|
|
|
/**
|
|
* FpiMatchResult:
|
|
* @FPI_MATCH_ERROR: An error occured during matching
|
|
* @FPI_MATCH_FAIL: The prints did not match
|
|
* @FPI_MATCH_SUCCESS: The prints matched
|
|
*/
|
|
typedef enum {
|
|
FPI_MATCH_ERROR = -1, /* -1 for g_task_propagate_int */
|
|
FPI_MATCH_FAIL,
|
|
FPI_MATCH_SUCCESS,
|
|
} FpiMatchResult;
|
|
|
|
void fpi_print_add_print (FpPrint *print,
|
|
FpPrint *add);
|
|
|
|
void fpi_print_set_type (FpPrint *print,
|
|
FpPrintType type);
|
|
void fpi_print_set_device_stored (FpPrint *print,
|
|
gboolean device_stored);
|
|
|
|
gboolean fpi_print_add_from_image (FpPrint *print,
|
|
FpImage *image,
|
|
GError **error);
|
|
|
|
FpiMatchResult fpi_print_bz3_match (FpPrint * template,
|
|
FpPrint * print,
|
|
gint bz3_threshold,
|
|
GError **error);
|
|
|
|
G_END_DECLS
|