aboutsummaryrefslogtreecommitdiff
path: root/src/gui_project.h
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2020-05-04 15:01:02 +0200
committerThomas White <taw@physics.org>2020-07-29 18:42:57 +0200
commit26861a1ad1d3854e3f0acc9479fd5f5cc1135bdd (patch)
treec2c40c7c939d1140e851fb87841a0eb20803880d /src/gui_project.h
parent6253b9603cf27e91a5f147943f6c32a35fd4d956 (diff)
Move GUI project structure stuff to gui_project.h
Diffstat (limited to 'src/gui_project.h')
-rw-r--r--src/gui_project.h68
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);