static void fprint_device_get_property(GObject *object, guint property_id,
				       GValue *value, GParamSpec *pspec)
{
	FprintDevice *self = (FprintDevice *) object;
	FprintDevicePrivate *priv = DEVICE_GET_PRIVATE(self);

	switch (property_id) {
	case FPRINT_DEVICE_IN_USE:
		g_value_set_boolean(value, g_hash_table_size (priv->clients) != 0);
		break;
	case FPRINT_DEVICE_NAME:
		g_value_set_static_string (value, fp_driver_get_full_name (fp_dscv_dev_get_driver (priv->ddev)));
		break;
	case FPRINT_DEVICE_NUM_ENROLL:
		if (priv->dev)
			g_value_set_int (value, fp_dev_get_nr_enroll_stages (priv->dev));
		else
			g_value_set_int (value, -1);
		break;
	case FPRINT_DEVICE_SCAN_TYPE: {
		const char *type;

		if (fp_driver_get_scan_type (fp_dscv_dev_get_driver (priv->ddev)) == FP_SCAN_TYPE_PRESS)
			type = "press";
		else
			type = "swipe";

		g_value_set_static_string (value, type);
		break;
	}
	default:
		G_OBJECT_WARN_INVALID_PROPERTY_ID(object, property_id, pspec);
		break;
	}
}
Пример #2
0
struct fp_dscv_dev *discover_device(struct fp_dscv_dev **discovered_devs)
{
	struct fp_dscv_dev *ddev = discovered_devs[0];
	struct fp_driver *drv;
	if (!ddev)
		return NULL;
	
	drv = fp_dscv_dev_get_driver(ddev);
	printf("Found device claimed by %s driver\n", fp_driver_get_full_name(drv));
	return ddev;
}
Пример #3
0
static struct fp_dscv_dev *discover_device(struct fp_dscv_dev **discovered_devs)
{
	struct fp_dscv_dev *ddev = NULL;
	int i;

	for (i = 0; ddev = discovered_devs[i]; i++) {
		struct fp_driver *drv = fp_dscv_dev_get_driver(ddev);
		printf("Found device claimed by %s driver\n",
			fp_driver_get_full_name(drv));
		return ddev;
	}

	return ddev;
}
int main(void) {
	// Vars
	struct fp_dev *device;
	struct fp_driver *driver;
	struct fp_print_data *print_data;
	struct fp_img *img;
	int err;

	// Init the LCD
	lcdinit(0x00, 0x12, 0x20);
	lcd_reset();

	// Init libfprint
	fp_init();

	// Init the keypad
	matrix_init(4, 17, 27, 22, 10, 9, 11, handle_key_press);

	// Signal handler - does an fp_exit() on SIGINT
	init_signals();

	// Get the first fingerprint device
	if ((err = get_fingerprint_device(&device)) < 0 || !device) { // Errorz
		if (err == -1) {
			error("No devices found");
		}
		else if (err == -2) {
			error("Couldn't open the device");
		}

		return 1;
	}

	// Get driver
	driver = fp_dev_get_driver(device);

	// Init message
	printf("Programme started! Device is %s\n\n", fp_driver_get_full_name(driver));

	// Scan the print
	fp_enroll_finger_img(device, &print_data, &img);

	// Deinit libfprint
	fp_exit();

	return 0;
}
Пример #5
0
static gboolean mwin_populate_devs(void)
{
	struct fp_dscv_dev **discovered_devs;
	struct fp_dscv_dev *ddev;
	int i;

	discovered_devs = fp_discover_devs();
	if (!discovered_devs)
		return FALSE;

	for (i = 0; (ddev = discovered_devs[i]); i++) {
		struct fp_driver *drv = fp_dscv_dev_get_driver(ddev);
		GtkTreeIter iter;

		gtk_list_store_append(mwin_devmodel, &iter);
		gtk_list_store_set(mwin_devmodel, &iter, 0,
			fp_driver_get_full_name(drv), 1, ddev, -1);
	}

	return TRUE;
}
Пример #6
0
//driver bilgisi
void print_driver_info(struct fp_dscv_dev* ddev){ //assume valid input
    struct fp_driver* driver;
    driver = fp_dscv_dev_get_driver(ddev);
    //printf("Okuyucu bulundu!\n");
    printf("Driver id: %d\nDriver ismi: %s\n", fp_driver_get_driver_id(driver), fp_driver_get_full_name(driver));
}