Release 0.6.0 using parallelized code
[gpiv.git] / src / dac_interface.h
blob33a59be19edf24fa1a6911653f7ee73708258c66
2 /*----------------------------------------------------------------------
4 gpiv - Graphic program for Particle Image Velocimetry, based on gtk/gnome
5 libraries.
7 Copyright (C) 2002 Gerber van der Graaf
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)
14 any later version.
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 ----------------------------------------------------------------------*/
28 * Dac tab
29 * $Log: dac_interface.h,v $
30 * Revision 1.2 2008-09-16 11:17:42 gerber
31 * Updated because of cvs conflict
33 * Revision 1.1 2005/01/19 15:53:41 gerber
34 * Initiation of Data Acquisition (DAC); trigerring of lasers and camera
35 * by using RTAI and Realtime Linux, recording images from IEEE1394
36 * (Firewire) IIDC compliant camera's
39 #ifndef GPIV_DAC_INTERFACE_H
40 #define GPIV_DAC_INTERFACE_H
44 /* #undef ENABLE_CAM */
45 #ifdef ENABLE_CAM
46 typedef struct _DacDraw DacDraw;
47 struct _DacDraw {
48 GtkWidget *window;
49 GtkWidget *darea;
53 DacDraw *
54 create_dacdraw(GpivCamVar *cam_var,
55 guchar *rgbbuf);
58 typedef struct _Cam Cam;
59 struct _Cam {
60 GtkWidget *frame_cam;
61 GtkWidget *vbox_cam;
62 GtkWidget *table_cam;
63 /* GtkWidget *label_cam; */
64 GtkWidget *camera_select;
65 GtkWidget *camera_select_menu;
66 GtkWidget *menu_item;
68 GtkWidget *format_menu;
69 GtkWidget *format_menu_menu;
70 /* GtkWidget *format0_menu_menu; */
72 GtkWidget *fps_menu;
73 GtkWidget *fps_menu_menu;
75 /* GtkWidget *frame_trigger; */
76 /* GtkWidget *vbox_trigger; */
77 GtkWidget *hbox_trigger;
78 GtkWidget *trigger_external;
79 GtkWidget *trigger_polarity;
80 GtkWidget* trigger_mode;
81 GtkWidget* trigger_mode_menu;
83 GtkWidget *checkbutton_camera_trigger;
84 GtkWidget *camera_exposure;
85 GtkWidget *camera_exposure_menu;
86 GtkWidget *menu_item_camera_exposure_man;
87 GtkWidget *menu_item_camera_exposure_auto;
88 GtkWidget *menu_item_camera_exposure_na;
89 GtkObject *adj_exposure_scale;
90 GtkWidget *exposure_scale;
92 GtkWidget *camera_iris;
93 GtkWidget *camera_iris_menu;
94 GtkWidget *menu_item_camera_iris_man;
95 GtkWidget *menu_item_camera_iris_auto;
96 GtkWidget *menu_item_camera_iris_na;
97 GtkObject *adj_iris_scale;
98 GtkWidget *iris_scale;
100 GtkWidget *camera_shutter;
101 GtkWidget *camera_shutter_menu;
102 GtkWidget *menu_item_camera_shutter_man;
103 GtkWidget *menu_item_camera_shutter_auto;
104 GtkWidget *menu_item_camera_shutter_na;
105 GtkObject *adj_shutter_scale;
106 GtkWidget *shutter_scale;
108 GtkWidget *camera_gain;
109 GtkWidget *camera_gain_menu;
110 GtkWidget *menu_item_camera_gain_man;
111 GtkWidget *menu_item_camera_gain_auto;
112 GtkWidget *menu_item_camera_gain_na;
113 GtkObject *adj_gain_scale;
114 GtkWidget *gain_scale;
116 GtkWidget *camera_temp;
117 GtkWidget *camera_temp_menu;
118 GtkWidget *menu_item_camera_temp_man;
119 GtkWidget *menu_item_camera_temp_auto;
120 GtkWidget *menu_item_camera_temp_na;
121 GtkObject *adj_temp_scale;
122 GtkWidget *temp_scale;
124 GtkWidget *label_temp;
125 GtkWidget *label_label_temp;
127 GtkWidget *camera_zoom;
128 GtkWidget *camera_zoom_menu;
129 GtkWidget *menu_item_camera_zoom_man;
130 GtkWidget *menu_item_camera_zoom_auto;
131 GtkWidget *menu_item_camera_zoom_na;
132 GtkObject *adj_zoom_scale;
133 GtkWidget *zoom_scale;
135 GtkWidget *camera_pan;
136 GtkWidget *camera_pan_menu;
137 GtkWidget *menu_item_camera_pan_man;
138 GtkWidget *menu_item_camera_pan_auto;
139 GtkWidget *menu_item_camera_pan_na;
140 GtkObject *adj_pan_scale;
141 GtkWidget *pan_scale;
143 GtkWidget *camera_tilt;
144 GtkWidget *camera_tilt_menu;
145 GtkWidget *menu_item_camera_tilt_man;
146 GtkWidget *menu_item_camera_tilt_auto;
147 GtkWidget *menu_item_camera_tilt_na;
148 GtkObject *adj_tilt_scale;
149 GtkWidget *tilt_scale;
152 GtkWidget *button_cam_start;
153 GtkWidget *button_cam_stop;
155 #endif /* ENABLE_CAM */
158 typedef struct _Trig Trig;
159 struct _Trig {
160 GtkWidget *frame_trigger;
161 GtkWidget *table_trigger;
162 /* GtkWidget *label_trigger; */
163 GtkWidget *vbox_trigger;
164 GSList *mouse_trigger_group;
165 GtkWidget *radiobutton_mouse_1;
166 GtkWidget *radiobutton_mouse_2;
167 #ifdef ENABLE_TRIG
168 GtkWidget *radiobutton_mouse_3;
169 GtkWidget *radiobutton_mouse_4;
170 GtkWidget *radiobutton_mouse_5;
171 GtkWidget *radiobutton_mouse_6;
172 GtkWidget *label_trigger_dt;
173 GtkObject *spinbutton_adj_trigger_dt;
174 GtkWidget *spinbutton_trigger_dt;
175 GtkWidget *label_trigger_incrdt;
176 GtkObject *spinbutton_adj_trigger_incrdt;
177 GtkWidget *spinbutton_trigger_incrdt;
178 GtkWidget *label_trigger_cap;
179 GtkObject *spinbutton_adj_trigger_cap;
180 GtkWidget *spinbutton_trigger_cap;
181 #endif /* ENABLE_TRIG */
182 GtkWidget *label_trigger_nf;
183 GtkObject *spinbutton_adj_trigger_nf;
184 GtkWidget *spinbutton_trigger_nf;
185 #ifdef ENABLE_TRIG
186 GtkWidget *button_trigger_start;
187 GtkWidget *button_trigger_stop;
188 #endif /* ENABLE_TRIG */
193 typedef struct _Dac Dac;
194 struct _Dac {
195 GtkWidget *vbox_label;
196 GtkWidget *label_title;
198 GtkWidget *vbox_scroll;
199 GtkWidget *scrolledwindow;
200 GtkWidget *viewport;
201 GtkWidget *table;
203 GtkWidget *frame_fname;
204 GtkWidget *table_fname;
205 GtkWidget *label_fname;
206 GtkWidget *entry_fname;
207 GtkWidget *combo_fname;
208 GList *combo_fname_items;
209 GtkWidget *checkbutton_fname_date;
210 GtkWidget *checkbutton_fname_time;
212 Trig *trig;
213 #ifdef ENABLE_CAM
214 Cam *cam;
215 #endif /* ENABLE_CAM */
219 /* void */
220 /* create_camera_exposure_menu(GtkWidget *main_window, */
221 /* Dac *dac); */
222 /* void */
223 /* create_camera_iris_menu(GtkWidget *main_window, */
224 /* Dac *dac); */
226 /* void */
227 /* create_camera_shutter_menu(GtkWidget *main_window, */
228 /* Dac *dac); */
230 /* void */
231 /* create_camera_gain_menu(GtkWidget *main_window, */
232 /* Dac *dac); */
234 /* void */
235 /* create_camera_menu(GtkWidget *main_window, */
236 /* Dac *dac); */
238 Dac *
239 create_dac(GnomeApp *main_window,
240 GtkWidget *container);
243 #endif /* GPIV_DAC_INTERFACE_H */