view src/similar.h @ 2901:ce889887354f

Avoid non-portable == for the test command The test command doesn't accept `==` as operator. It should be a single `=` for portable use. The `==` is a gnu extension. Note that the x-trick hasn't been needed for a long, long time. You can reliably write it with quotes: ``` if test "$gtk3" = yes; then ``` but I left that alone since it doesn't hurt other than being ugly.
author Rhialto The M <Rhialto@users.noreply.github.com>
date Sat, 06 Oct 2018 18:26:43 +0200
parents 95507e596256
children
line wrap: on
line source

/*
 * Copyright (C) 2004 John Ellis
 * Copyright (C) 2008 - 2016 The Geeqie Team
 *
 * Author: John Ellis
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program 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 General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program; if not, write to the Free Software Foundation, Inc.,
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */

#ifndef SIMILAR_H
#define SIMILAR_H


typedef struct _ImageSimilarityData ImageSimilarityData;
struct _ImageSimilarityData
{
	guint8 avg_r[1024];
	guint8 avg_g[1024];
	guint8 avg_b[1024];

	gboolean filled;
};


ImageSimilarityData *image_sim_new(void);
void image_sim_free(ImageSimilarityData *sd);

void image_sim_fill_data(ImageSimilarityData *sd, GdkPixbuf *pixbuf);
ImageSimilarityData *image_sim_new_from_pixbuf(GdkPixbuf *pixbuf);

gdouble image_sim_compare(ImageSimilarityData *a, ImageSimilarityData *b);
gdouble image_sim_compare_fast(ImageSimilarityData *a, ImageSimilarityData *b, gdouble min);


void image_sim_alternate_set(gboolean enable);
gboolean image_sim_alternate_enabled(void);
void image_sim_alternate_processing(ImageSimilarityData *sd);


#endif
/* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */