Fix and simplify histogram code, drop histogram based on mean value.
[geeqie.git] / src / histogram.h
1 /*
2  * Geeqie
3  * Copyright (C) 2008 - 2009 The Geeqie Team
4  *
5  * Author: Vladimir Nadvornik
6  * based on a patch by Uwe Ohse
7  *
8  * This software is released under the GNU General Public License (GNU GPL).
9  * Please read the included file COPYING for more information.
10  * This software comes with no warranty of any kind, use at your own risk!
11  */
12
13 #ifndef HISTOGRAM_H
14 #define HISTOGRAM_H
15
16 /* Note: The order is important */
17 #define HCHAN_R 0
18 #define HCHAN_G 1
19 #define HCHAN_B 2
20 #define HCHAN_RGB 3
21 #define HCHAN_MAX 4
22 #define HCHAN_COUNT (HCHAN_MAX+1)
23
24
25 Histogram *histogram_new(void);
26 void histogram_free(Histogram *histogram);
27 gint histogram_set_channel(Histogram *histogram, gint chan);
28 gint histogram_get_channel(Histogram *histogram);
29 gint histogram_set_mode(Histogram *histogram, gint mode);
30 gint histogram_get_mode(Histogram *histogram);
31 const gchar *histogram_label(Histogram *histogram);
32 const HistMap *histmap_get(FileData *fd);
33 gint histogram_draw(Histogram *histogram, const HistMap *histmap, GdkPixbuf *pixbuf, gint x, gint y, gint width, gint height);
34
35 void histogram_notify_cb(FileData *fd, NotifyType type, gpointer data);
36
37 #endif /* HISTOGRAM_H */
38 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */