mirror of
https://gitlab.freedesktop.org/libfprint/libfprint.git
synced 2025-11-15 07:38:12 +00:00
lib: Major rewrite of the libfprint core and API
This is a rewrite of the core based on GObject and Gio. This commit breaks the build in a lot of ways, but basic functionality will start working again with the next commits.
This commit is contained in:
83
libfprint/fpi-image.h
Normal file
83
libfprint/fpi-image.h
Normal file
@@ -0,0 +1,83 @@
|
||||
/*
|
||||
* FPrint Image
|
||||
* Copyright (C) 2007 Daniel Drake <dsd@gentoo.org>
|
||||
* Copyright (C) 2019 Benjamin Berg <bberg@redhat.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
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <config.h>
|
||||
#include "fp-image.h"
|
||||
|
||||
/**
|
||||
* FpiImageFlags:
|
||||
* @FPI_IMAGE_V_FLIPPED: the image is vertically flipped
|
||||
* @FPI_IMAGE_H_FLIPPED: the image is horizontally flipped
|
||||
* @FPI_IMAGE_COLORS_INVERTED: the colours are inverted
|
||||
*
|
||||
* Flags used in an #FpImage structure to describe the contained image.
|
||||
* This is useful for image drivers as they can simply set these flags and
|
||||
* rely on the image to be normalized by libfprint before further processing.
|
||||
*/
|
||||
typedef enum {
|
||||
FPI_IMAGE_V_FLIPPED = 1 << 0,
|
||||
FPI_IMAGE_H_FLIPPED = 1 << 1,
|
||||
FPI_IMAGE_COLORS_INVERTED = 1 << 2,
|
||||
} FpiImageFlags;
|
||||
|
||||
/**
|
||||
* FpImage:
|
||||
* @width: Width of the image
|
||||
* @height: Height of the image
|
||||
* @ppmm: Pixels per millimeter
|
||||
* @flags: #FpiImageFlags for required normalization
|
||||
*
|
||||
* Structure holding an image. The public fields are only public for internal
|
||||
* use by the drivers.
|
||||
*/
|
||||
struct _FpImage
|
||||
{
|
||||
/*< private >*/
|
||||
GObject parent;
|
||||
|
||||
/*< public >*/
|
||||
guint width;
|
||||
guint height;
|
||||
|
||||
gdouble ppmm;
|
||||
|
||||
FpiImageFlags flags;
|
||||
|
||||
/*< private >*/
|
||||
guint8 *data;
|
||||
guint8 *binarized;
|
||||
|
||||
GPtrArray *minutiae;
|
||||
guint ref_count;
|
||||
};
|
||||
|
||||
gint fpi_std_sq_dev (const guint8 *buf,
|
||||
gint size);
|
||||
gint fpi_mean_sq_diff_norm (const guint8 *buf1,
|
||||
const guint8 *buf2,
|
||||
gint size);
|
||||
|
||||
#if HAVE_PIXMAN
|
||||
FpImage *fpi_image_resize (FpImage *orig,
|
||||
guint w_factor,
|
||||
guint h_factor);
|
||||
#endif
|
||||
Reference in New Issue
Block a user