diff options
author | Thomas White <taw@physics.org> | 2020-05-04 15:01:02 +0200 |
---|---|---|
committer | Thomas White <taw@physics.org> | 2020-07-29 18:42:57 +0200 |
commit | 26861a1ad1d3854e3f0acc9479fd5f5cc1135bdd (patch) | |
tree | c2c40c7c939d1140e851fb87841a0eb20803880d /src/gui_project.h | |
parent | 6253b9603cf27e91a5f147943f6c32a35fd4d956 (diff) |
Move GUI project structure stuff to gui_project.h
Diffstat (limited to 'src/gui_project.h')
-rw-r--r-- | src/gui_project.h | 68 |
1 files changed, 66 insertions, 2 deletions
diff --git a/src/gui_project.h b/src/gui_project.h index 9fdb9a34..1c99d5ce 100644 --- a/src/gui_project.h +++ b/src/gui_project.h @@ -29,6 +29,10 @@ #ifndef GUI_PROJECT_H #define GUI_PROJECT_H +#include <gtk/gtk.h> + +#include <peaks.h> + enum match_type_id { MATCH_EVERYTHING, @@ -38,11 +42,71 @@ enum match_type_id MATCH_CBFGZ, }; -struct crystfelproject; +struct peak_params { + enum peak_search_method method; + float threshold; /* zaef, pf8 */ + float min_sq_gradient; /* zaef */ + float min_snr; /* zaef, pf8 */ + int min_pix_count; /* pf8 */ + int max_pix_count; /* pf8 */ + int local_bg_radius; /* pf8 */ + int min_res; /* pf8 */ + int max_res; /* pf8 */ + float min_snr_biggest_pix; /* pf9 */ + float min_snr_peak_pix; /* pf9 */ + float min_sig; /* pf9 */ + float min_peak_over_neighbour; /* pf9 */ + float pk_inn; + float pk_mid; + float pk_out; + int half_pixel_shift; /* cxi, hdf5 */ + int revalidate; +}; + +struct crystfelproject { + + GtkWidget *window; + GtkUIManager *ui; + GtkActionGroup *action_group; + + GtkWidget *imageview; + GtkWidget *icons; /* Drawing area for task icons */ + GtkWidget *report; /* Text view at the bottom for messages */ + GtkWidget *main_vbox; + GtkWidget *image_info; + + int cur_frame; + char *geom_filename; + char *data_top_folder; /* For convenience only. Filenames in + * 'filenames' list should be complete */ + enum match_type_id data_search_pattern; -#include "crystfel_gui.h" + int n_frames; + int max_frames; + char **filenames; + char **events; + int show_peaks; + struct peak_params peak_search_params; + + GtkWidget *file_chooser; /* Data location in "Find data" window */ + GtkWidget *geom_chooser; /* Data location in "Find data" window */ + GtkWidget *type_combo; /* Search pattern in "Find data" window */ + + GtkWidget *peak_vbox; /* Box for peak search parameter widgets */ + GtkWidget *peak_params; /* Peak search parameter widgets */ + struct peak_params original_params; + + GtkWidget *unitcell_combo; + + GtkWidget *info_bar; + void (*infobar_callback)(struct crystfelproject *proj); + GtkWidget *progressbar; + + struct crystfel_backend *backend; + void *backend_private; +}; extern enum match_type_id decode_matchtype(const char *type_id); |