Remove all uses of enums in the API

The clients aren't supposed to know the magic numbers for enums,
so use strings instead.
This commit is contained in:
Bastien Nocera
2008-11-20 16:51:46 +00:00
committed by Daniel Drake
parent f39e1475b4
commit f7186c7ff0
6 changed files with 98 additions and 96 deletions

View File

@ -25,38 +25,6 @@
static DBusGProxy *manager = NULL;
static DBusGConnection *connection = NULL;
enum enroll_result {
ENROLL_COMPLETE = 1,
ENROLL_FAIL,
ENROLL_PASS,
ENROLL_RETRY = 100,
ENROLL_RETRY_TOO_SHORT = 101,
ENROLL_RETRY_CENTER_FINGER = 102,
ENROLL_RETRY_REMOVE_FINGER = 103,
};
static const char *enroll_result_str(int result)
{
switch (result) {
case ENROLL_COMPLETE:
return "Enroll completed.";
case ENROLL_FAIL:
return "Enroll failed :(";
case ENROLL_PASS:
return "Enroll stage passed. Please scan again for next stage.";
case ENROLL_RETRY:
return "Retry scan";
case ENROLL_RETRY_TOO_SHORT:
return "Swipe too short, please retry";
case ENROLL_RETRY_CENTER_FINGER:
return "Finger not centered, please retry";
case ENROLL_RETRY_REMOVE_FINGER:
return "Please remove finger and retry";
default:
return "Unknown";
}
}
static void create_manager(void)
{
GError *error = NULL;
@ -97,11 +65,13 @@ static DBusGProxy *open_device(const char *username)
return dev;
}
static void enroll_result(GObject *object, int result, void *user_data)
static void enroll_result(GObject *object, const char *result, void *user_data)
{
gboolean *enroll_completed = user_data;
g_print("Enroll result: %s (%d)\n", enroll_result_str(result), result);
if (result == ENROLL_COMPLETE || result == ENROLL_FAIL)
g_print("Enroll result: %s\n", result);
if (g_str_equal(result, "enroll-completed") ||
g_str_equal(result, "enroll-failed") ||
g_str_equal(result, "enroll-unknown-error"))
*enroll_completed = TRUE;
}

View File

@ -30,35 +30,6 @@ static char *finger_name = "any";
static gboolean g_fatal_warnings = FALSE;
static char **usernames = NULL;
enum fp_verify_result {
VERIFY_NO_MATCH = 0,
VERIFY_MATCH = 1,
VERIFY_RETRY = 100,
VERIFY_RETRY_TOO_SHORT = 101,
VERIFY_RETRY_CENTER_FINGER = 102,
VERIFY_RETRY_REMOVE_FINGER = 103,
};
static const char *verify_result_str(int result)
{
switch (result) {
case VERIFY_NO_MATCH:
return "No match";
case VERIFY_MATCH:
return "Match!";
case VERIFY_RETRY:
return "Retry scan";
case VERIFY_RETRY_TOO_SHORT:
return "Swipe too short, please retry";
case VERIFY_RETRY_CENTER_FINGER:
return "Finger not centered, please retry";
case VERIFY_RETRY_REMOVE_FINGER:
return "Please remove finger and retry";
default:
return "Unknown";
}
}
static void create_manager(void)
{
GError *error = NULL;
@ -125,11 +96,13 @@ static void find_finger(DBusGProxy *dev, const char *username)
g_strfreev (fingers);
}
static void verify_result(GObject *object, int result, void *user_data)
static void verify_result(GObject *object, const char *result, void *user_data)
{
gboolean *verify_completed = user_data;
g_print("Verify result: %s (%d)\n", verify_result_str(result), result);
if (result == VERIFY_NO_MATCH || result == VERIFY_MATCH)
g_print("Verify result: %s\n", result);
if (g_str_equal (result, "verify-no-match") ||
g_str_equal (result, "verify-match") ||
g_str_equal (result, "verify-unknown-error"))
*verify_completed = TRUE;
}