mirror of
https://gitlab.freedesktop.org/libfprint/libfprint.git
synced 2025-11-15 07:38:12 +00:00
examples: Make possible to select the finger to enroll/verify
Move some common functions to an utilities file.
This commit is contained in:
committed by
Benjamin Berg
parent
f2b932960e
commit
ab804f7f49
94
examples/utilities.c
Normal file
94
examples/utilities.c
Normal file
@@ -0,0 +1,94 @@
|
||||
/*
|
||||
* Utilities for example programs
|
||||
*
|
||||
* Copyright (C) 2019 Marco Trevisan <marco.trevisan@canonical.com>
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
#include <libfprint/fprint.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include "utilities.h"
|
||||
|
||||
const char *
|
||||
finger_to_string (FpFinger finger)
|
||||
{
|
||||
switch (finger)
|
||||
{
|
||||
case FP_FINGER_LEFT_THUMB:
|
||||
return "left thumb";
|
||||
|
||||
case FP_FINGER_LEFT_INDEX:
|
||||
return "left index";
|
||||
|
||||
case FP_FINGER_LEFT_MIDDLE:
|
||||
return "left middle";
|
||||
|
||||
case FP_FINGER_LEFT_RING:
|
||||
return "left ring";
|
||||
|
||||
case FP_FINGER_LEFT_LITTLE:
|
||||
return "left little";
|
||||
|
||||
case FP_FINGER_RIGHT_THUMB:
|
||||
return "right thumb";
|
||||
|
||||
case FP_FINGER_RIGHT_INDEX:
|
||||
return "right index";
|
||||
|
||||
case FP_FINGER_RIGHT_MIDDLE:
|
||||
return "right middle";
|
||||
|
||||
case FP_FINGER_RIGHT_RING:
|
||||
return "right ring";
|
||||
|
||||
case FP_FINGER_RIGHT_LITTLE:
|
||||
return "right little";
|
||||
|
||||
default:
|
||||
return "unknown";
|
||||
}
|
||||
}
|
||||
|
||||
FpFinger
|
||||
finger_chooser (void)
|
||||
{
|
||||
int i;
|
||||
const FpFinger all_fingers[] = {
|
||||
FP_FINGER_LEFT_THUMB,
|
||||
FP_FINGER_LEFT_INDEX,
|
||||
FP_FINGER_LEFT_MIDDLE,
|
||||
FP_FINGER_LEFT_RING,
|
||||
FP_FINGER_LEFT_LITTLE,
|
||||
FP_FINGER_RIGHT_THUMB,
|
||||
FP_FINGER_RIGHT_INDEX,
|
||||
FP_FINGER_RIGHT_MIDDLE,
|
||||
FP_FINGER_RIGHT_RING,
|
||||
FP_FINGER_RIGHT_LITTLE,
|
||||
};
|
||||
|
||||
for (i = all_fingers[0]; i <= G_N_ELEMENTS (all_fingers); ++i)
|
||||
g_print(" [%d] %s\n", (i - all_fingers[0]), finger_to_string (i));
|
||||
|
||||
g_print ("> ");
|
||||
if (!scanf ("%d%*c", &i))
|
||||
return FP_FINGER_UNKNOWN;
|
||||
|
||||
if (i < 0 || i >= G_N_ELEMENTS (all_fingers))
|
||||
return FP_FINGER_UNKNOWN;
|
||||
|
||||
return all_fingers[i];
|
||||
}
|
||||
Reference in New Issue
Block a user