1 /* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 4 c-style: "K&R" -*- */
3 /*----------------------------------------------------------------------
5 gpiv - Graphic program for Particle Image Velocimetry, based on gtk/gnome
8 Copyright (C) 2002 Gerber van der Graaf
10 This file is part of gpiv.
12 Gpiv is free software; you can redistribute it and/or modify
13 it under the terms of the GNU General Public License as published by
14 the Free Software Foundation; either version 2, or (at your option)
17 This program is distributed in the hope that it will be useful,
18 but WITHOUT ANY WARRANTY; without even the implied warranty of
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 GNU General Public License for more details.
22 You should have received a copy of the GNU General Public License
23 along with this program; if not, write to the Free Software Foundation,
24 Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
26 ----------------------------------------------------------------------*/
29 * (callback) functions for Piv evaluation window/tabulator
31 * Revision 1.11 2008-04-28 12:00:57 gerber
32 * hdf-formatted files are now with .hdf extension (previously: .gpi)
34 * Revision 1.10 2007-11-23 16:24:07 gerber
35 * release 0.5.0: Kafka
37 * Revision 1.9 2007-06-06 17:00:48 gerber
38 * Retreives images/data from URI using Gnome Virtual File System.
40 * Revision 1.8 2007-02-16 17:09:48 gerber
41 * added Gauss weighting on I.A. and SPOF filtering (on correlation function)
43 * Revision 1.7 2007-01-29 11:27:44 gerber
44 * added image formats png, gif, tif png, bmp, improved buffer display
46 * Revision 1.6 2006/01/31 14:28:12 gerber
49 * Revision 1.5 2005/01/19 15:53:42 gerber
50 * Initiation of Data Acquisition (DAC); trigerring of lasers and camera
51 * by using RTAI and Realtime Linux, recording images from IEEE1394
52 * (Firewire) IIDC compliant camera's
54 * Revision 1.4 2004/10/15 19:24:05 gerber
55 * GPIV_ and Gpiv prefix to defines and structure names of libgpiv
57 * Revision 1.3 2004/06/14 21:19:23 gerber
58 * Image depth up to 16 bits.
59 * Improvement "single int" and "drag int" in Eval tab.
60 * Viewer's pop-up menu.
61 * Adaption for gpiv_matrix_* and gpiv_vector_*.
63 * See Changelog for further info.
65 * Revision 1.2 2003/09/01 11:17:15 gerber
66 * improved monitoring of interrogation process
68 * Revision 1.1.1.1 2003/06/17 17:10:52 gerber
76 gint int_scheme_tmp
, zero_off_tmp
, weight_tmp
; /* used in on_radiobutton_piv_int */
77 gint setby_spinbutton
; /* used in on_spinbutton_piv_int and on_radiobutton_piv_int */
78 gboolean int_scheme_autochanged
;
82 * Public piv evaluation functions
86 interrogate_ORG (GpivPivData
*piv_data
, /* output piv data from image analysis */
87 guint16
**img_1
, /* raw (binary) image data of first piv image */
88 guint16
**img_2
, /* raw (binary) image data of second piv image */
89 GpivConsole
*gpiv
); /* console widgets structure */
92 display_piv_vector (guint i
,
94 GpivPivData
*piv_data
,
98 display_img_intreg1 (float **intreg1
,
103 display_img_intreg2 (float **intreg2
,
108 display_img_cov (GpivCov
*cov
,
114 * Piv evaluation window/tabulator callbacks
118 on_radiobutton_piv_mouse (GtkWidget
*widget
,
122 on_radiobutton_piv_mouse1_enter (GtkWidget
*widget
,
125 on_radiobutton_piv_mouse2_enter (GtkWidget
*widget
,
128 on_radiobutton_piv_mouse3_enter (GtkWidget
*widget
,
131 on_radiobutton_piv_mouse4_enter (GtkWidget
*widget
,
134 on_radiobutton_piv_mouse5_enter (GtkWidget
*widget
,
137 on_radiobutton_piv_mouse6_enter (GtkWidget
*widget
,
140 on_radiobutton_piv_mouse7_enter (GtkWidget
*widget
,
145 * entries for first, last, and pre-shift columns and rows
149 on_spinbutton_piv_int (GtkSpinButton
*widget
,
154 * radio buttons of first, second interrogation sizes and shift (adjacent
159 on_radiobutton_piv_int (GtkWidget
*widget
,
163 on_radiobutton_fit_enter (GtkWidget
*widget
,
167 on_radiobutton_peak_enter (GtkWidget
*widget
,
171 on_radiobutton_interrogatescheme_enter (GtkWidget
*widget
,
175 on_radiobutton_interrogatescheme_imgdeform_enter (GtkWidget
*widget
,
179 on_toggle_piv (GtkWidget
*widget
,
183 on_checkbutton_weight_ia_enter (GtkWidget
*widget
,
186 on_checkbutton_weight_ia (GtkWidget
*widget
,
190 on_checkbutton_spof_enter (GtkWidget
*widget
,
193 on_checkbutton_spof (GtkWidget
*widget
,
197 on_button_piv (GtkWidget
*widget
,
201 on_toolbar_chackbutton_piv (GtkWidget
*widget
,
205 * showing interrogation area's, covariance function and
206 * displacement vector
209 on_darea_piv_monitor_int1_expose (GtkWidget
*widget
,
210 GdkEventExpose
*event
,
214 on_darea_piv_monitor_int2_expose (GtkWidget
*widget
,
215 GdkEventExpose
*event
,
218 on_darea_piv_monitor_cov_expose (GtkWidget
*widget
,
219 GdkEventExpose
*event
,
223 on_checkbutton_piv_monitor_enter (GtkWidget
*widget
,
227 on_checkbutton_piv_monitor (GtkWidget
*widget
,
231 on_spinbutton_piv_monitor_zoom (GtkSpinButton
*widget
,
235 on_spinbutton_piv_monitor_vectorscale (GtkSpinButton
*widget
,
239 on_button_piv_enter (GtkWidget
*widget
,
243 adjust_radiobutton_piv_int (PivEval
*piveval
,
247 #endif /* PIVEVAL_H */