1 /*----------------------------------------------------------------------
3 gpiv - Graphic program for Particle Image Velocimetry, based on gtk/gnome
6 Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008
7 Gerber van der Graaf <gerber_graaf@users.sourceforge.net>
9 This file is part of gpiv.
11 Gpiv is free software; you can redistribute it and/or modify
12 it under the terms of the GNU General Public License as published by
13 the Free Software Foundation; either version 2, or (at your option)
16 This program is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 GNU General Public License for more details.
21 You should have received a copy of the GNU General Public License
22 along with this program; if not, write to the Free Software Foundation,
23 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25 ----------------------------------------------------------------------*/
29 * $Log: piveval_interface.h,v $
30 * Revision 1.12 2008-04-28 12:00:57 gerber
31 * hdf-formatted files are now with .hdf extension (previously: .gpi)
33 * Revision 1.11 2007-11-23 16:24:08 gerber
34 * release 0.5.0: Kafka
36 * Revision 1.10 2007-06-06 17:00:48 gerber
37 * Retreives images/data from URI using Gnome Virtual File System.
39 * Revision 1.9 2007-02-16 17:09:49 gerber
40 * added Gauss weighting on I.A. and SPOF filtering (on correlation function)
42 * Revision 1.8 2007-01-29 11:27:44 gerber
43 * added image formats png, gif, tif png, bmp, improved buffer display
45 * Revision 1.7 2006/01/31 14:28:12 gerber
48 * Revision 1.5 2005/01/19 15:53:42 gerber
49 * Initiation of Data Acquisition (DAC); trigerring of lasers and camera
50 * by using RTAI and Realtime Linux, recording images from IEEE1394
51 * (Firewire) IIDC compliant camera's
53 * Revision 1.4 2004/10/15 19:24:05 gerber
54 * GPIV_ and Gpiv prefix to defines and structure names of libgpiv
56 * Revision 1.3 2004/06/14 21:19:23 gerber
57 * Image depth up to 16 bits.
58 * Improvement "single int" and "drag int" in Eval tab.
59 * Viewer's pop-up menu.
60 * Adaption for gpiv_matrix_* and gpiv_vector_*.
62 * See Changelog for further info.
64 * Revision 1.2 2003/09/01 11:17:15 gerber
65 * improved monitoring of interrogation process
67 * Revision 1.1.1.1 2003/06/17 17:10:52 gerber
72 #ifndef GPIV_PIVEVAL_INTERFACE_H
73 #define GPIV_PIVEVAL_INTERFACE_H
75 typedef struct _Monitor Monitor
;
81 GnomeCanvasItem
*gci_int1
;
82 GnomeCanvasItem
*gci_int1_background
;
85 GnomeCanvasItem
*gci_int2
;
86 GnomeCanvasItem
*gci_int2_background
;
91 GnomeCanvasItem
*gci_cov
;
92 GnomeCanvasItem
*gci_background_cov
;
95 GnomeCanvasItem
*gci_vec_background
;
96 GnomeCanvasItem
*gci_vec
;
100 /* const */double affine
[6];
101 /* const */double affine_vl
[6];
106 typedef struct _PivEval PivEval
;
108 GtkWidget
*vbox_label
;
109 GtkWidget
*label_title
;
111 GtkWidget
*vbox_scroll
;
112 GtkWidget
*scrolledwindow
;
115 GtkWidget
*vbox_viewport1
;
117 GtkWidget
*table_aoi
;
118 GtkWidget
*label_colstart
;
119 GtkWidget
*label_colend
;
120 GtkWidget
*label_preshiftcol
;
121 GtkWidget
*label_rowstart
;
122 GtkWidget
*label_rowend
;
123 GtkWidget
*label_preshiftrow
;
124 GtkObject
*spinbutton_adj_colstart
;
125 GtkWidget
*spinbutton_colstart
;
126 GtkObject
*spinbutton_adj_colend
;
127 GtkWidget
*spinbutton_colend
;
128 GtkObject
*spinbutton_adj_preshiftcol
;
129 GtkWidget
*spinbutton_preshiftcol
;
130 GtkObject
*spinbutton_adj_rowstart
;
131 GtkWidget
*spinbutton_rowstart
;
132 GtkObject
*spinbutton_adj_rowend
;
133 GtkWidget
*spinbutton_rowend
;
134 GtkObject
*spinbutton_adj_preshiftrow
;
135 GtkWidget
*spinbutton_preshiftrow
;
137 GtkWidget
*hbox_intreg
;
139 GtkWidget
*vbox_intsize_f
;
140 GSList
*int_size_f_group
;
141 GtkObject
*spinbutton_adj_intsize_f
;
142 GtkWidget
*spinbutton_intsize_f
;
143 /* GtkWidget *radiobutton_intsize_f_1; */
144 GtkWidget
*radiobutton_intsize_f_2
;
145 GtkWidget
*radiobutton_intsize_f_3
;
146 GtkWidget
*radiobutton_intsize_f_4
;
147 GtkWidget
*radiobutton_intsize_f_5
;
150 GtkWidget
*vbox_intsize_i
;
151 GSList
*int_size_i_group
/* = NULL */;
152 GtkObject
*spinbutton_adj_intsize_i
;
153 GtkWidget
*spinbutton_intsize_i
;
154 /* GtkWidget *radiobutton_intsize_i_1; */
155 GtkWidget
*radiobutton_intsize_i_2
;
156 GtkWidget
*radiobutton_intsize_i_3
;
157 GtkWidget
*radiobutton_intsize_i_4
;
158 GtkWidget
*radiobutton_intsize_i_5
;
161 GtkWidget
*vbox_shift
;
162 GSList
*int_shift_group
;
163 GtkObject
*spinbutton_adj_intshift
;
164 GtkWidget
*spinbutton_intshift
;
165 GtkWidget
*radiobutton_intshift_1
;
166 GtkWidget
*radiobutton_intshift_2
;
167 GtkWidget
*radiobutton_intshift_3
;
168 GtkWidget
*radiobutton_intshift_4
;
169 GtkWidget
*radiobutton_intshift_5
;
172 GtkWidget
*vbox_mouseselect
;
174 * GSList *mouse_sel_group; moved to console
176 GtkWidget
*radiobutton_mouse_0
;
177 GtkWidget
*radiobutton_mouse_1
;
178 GtkWidget
*radiobutton_mouse_2
;
179 GtkWidget
*radiobutton_mouse_3
;
180 GtkWidget
*radiobutton_mouse_4
;
181 GtkWidget
*radiobutton_mouse_5
;
182 GtkWidget
*radiobutton_mouse_6
;
184 /*----------------------------------------------------------------
188 GtkWidget
*frame_monitor
;
189 GtkWidget
*table_monitor
;
191 GtkWidget
*frame_monitor_int1
;
192 GtkWidget
*canvas_monitor_int1
;
194 GtkWidget
*frame_monitor_int2
;
195 GtkWidget
*canvas_monitor_int2
;
197 GtkWidget
*frame_monitor_cov
;
198 GtkWidget
*canvas_monitor_cov
;
200 GtkWidget
*frame_monitor_vec
;
201 GtkWidget
*canvas_monitor_vec
;
204 GtkWidget
*hbox_monitor
;
205 GtkWidget
*checkbutton_monitor
;
206 GtkWidget
*label_monitor_zoom
;
207 GtkObject
*spinbutton_adj_monitor_zoom
;
208 GtkWidget
*spinbutton_monitor_zoom
;
209 GtkWidget
*label_monitor_vectorscale
;
210 GtkObject
*spinbutton_adj_monitor_vectorscale
;
211 GtkWidget
*spinbutton_monitor_vectorscale
;
213 /*----------------------------------------------------------------*/
217 GSList
*vbox10_group
;
218 GtkWidget
*radiobutton_fit_none
;
219 GtkWidget
*radiobutton_fit_gauss
;
220 GtkWidget
*radiobutton_fit_power
;
221 GtkWidget
*radiobutton_fit_gravity
;
224 GSList
*vbox11_group
;
225 GtkWidget
*radiobutton_peak_1
;
226 GtkWidget
*radiobutton_peak_2
;
227 GtkWidget
*radiobutton_peak_3
;
230 GSList
*vbox12_group
;
231 GtkWidget
*radiobutton_imgdeform
;
232 GtkWidget
*radiobutton_centraldiff
;
233 GtkWidget
*radiobutton_zerooff
;
234 GtkWidget
*radiobutton_weightkernel
;
237 GSList
*vbox13_group
;
238 GtkWidget
*radiobutton_cross_1
;
239 GtkWidget
*radiobutton_cross_2
;
240 GtkWidget
*checkbutton_weight_ia
;
241 GtkWidget
*checkbutton_spof
;
247 create_piveval (GnomeApp
*main_window
,
248 GtkWidget
*container
);
251 #endif /* GPIV_PIVEVAL_INTERFACE_H */