00001
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __gui_h
00025 #define __gui_h 1
00026 #define BUTTON_NORMAL 0
00027 #define BUTTON_BREAK 1
00028 #define BUTTON_DISABLE 2
00029 #define UPDATE_BUTTONS 1
00030 #define UPDATE_CCU_STATUS 2
00031 #define UPDATE_TERMINAL 3
00032 #define UPDATE_FILENAME 4
00033 #define UPDATE_OBJECTNAME 5
00034 #define UPDATE_PROGRESS 6
00035 #define UPDATE_FILTERLIST 7
00036 #define UPDATE_SEQUENCES 8
00037 #define UPDATE_PREVIEW 9
00038 #define SHOW_ZEROVOLT 10
00039 #define UPDATE_IMSTAT 11
00040 #define UPDATE_FLATS_DONE 12
00041 #define UPDATE_SHUTTER_OFFSET 13
00042 #include <gnome.h>
00043 #include <ccu.h>
00044 #include <semaphore.h>
00045 #include <progress.h>
00046 #include <instctrl.h>
00047 #include <telescope.h>
00048 #include <preview.h>
00049 #include <glib.h>
00050
00051
00052
00053 struct gui_button_struct {
00054 int flushccdbutton;
00055 int exposurebutton;
00056 int previewbutton;
00057 };
00058
00059 struct gui_update_struct {
00060 struct gui_button_struct buttons;
00061 char from_ccu[1000];
00062 char to_ccu[1000];
00063 char filename[1000];
00064 char objectname[1000];
00065 int code;
00066 int flats_done;
00067 double shutter_offset;
00068 struct progress_struct progress;
00069 struct image_statistics_struct imstat;
00070 };
00071
00072 struct gui_status_struct {
00073 struct instctrl_filterlist_struct filterlist;
00074 struct instctrl_status_struct instctrl_status;
00075 struct telescope_status_struct telescope_status;
00076 struct ccu_status_struct ccu_status;
00077 struct ccu_sequence_struct sequences;
00078 };
00079
00080 extern guchar *rgbbuf;
00081 extern char gui_lastname[1000];
00082 extern struct acquisition_struct gui_special_struct;
00083 extern char gtk_ccu_sequence_context[100][1000];
00084 extern char gui_multiplefilename[1000];
00085 extern char gui_queuefilename[1000];
00086 extern volatile int gui_clock;
00087 extern sem_t gui_list_sem;
00088 extern sem_t gui_status_sem;
00089 extern int gui_nexposures;
00090 int parse_gui(void);
00091 void init_gui(void);
00092 void init_sequencecombo(void);
00093 int init_gaincombo(void);
00094 void gui_init_instctrlwinddow(void);
00095 void init_drawarea (void);
00096 int gui_done_queuewinddow(void);
00097 void on_darea_expose (GtkWidget *widget,
00098 GdkEventExpose *event,
00099 gpointer user_data);
00100 int gui_ccu_contact(void);
00101 void gui_update_preview( unsigned char *data, int size );
00102 void gui_init_acquisition(void);
00103 void gui_update_buttons(struct gui_button_struct input);
00104 void gui_init_dapwinddow(void);
00105 int gui_done_databasewinddow(void);
00106 void gui_done_dapwindow(void);
00107 void gui_done_multiplewindow(void);
00108 void gui_init_databasewinddow(void);
00109 void gui_show_full(void);
00110 int gui_init_specialsequencecombo(void);
00111 int gui_init_specialgaincombo(void);
00112 void gui_ccu_display_status(struct ccu_status_struct status);
00113 void gui_queue_buttons(struct gui_button_struct input);
00114 void gui_queue_objectname(char *input);
00115 gboolean gui_idle( void );
00116 void gui_queue_normal(void);
00117 void gui_push_item(struct gui_update_struct input);
00118 int gui_done_autoflatwinddow();
00119 void gui_done_ccddatabasewindow();
00120 #endif
00121
00122