summaryrefslogtreecommitdiff
path: root/crystfel-demo.c
diff options
context:
space:
mode:
Diffstat (limited to 'crystfel-demo.c')
-rw-r--r--crystfel-demo.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/crystfel-demo.c b/crystfel-demo.c
index 3bde9d8..b4e1025 100644
--- a/crystfel-demo.c
+++ b/crystfel-demo.c
@@ -228,6 +228,42 @@ gint check_near_bragg(GtkWidget *widget, struct crystfeldemo *demo)
}
+gint peakogram(GtkWidget *widget, struct crystfeldemo *demo)
+{
+ GError *error = NULL;
+ GSubprocess *sub;
+
+ sub = g_subprocess_new(G_SUBPROCESS_FLAGS_NONE,
+ &error, "sh", "-c",
+ "${CRYSTFEL_DEMO_FILES}/peakogram-stream -i "
+ "${CRYSTFEL_DEMO_FILES}/cell.stream",
+ NULL);
+
+ if ( sub == NULL ) {
+ printf("Failed to start demo process\n");
+ }
+ return 0;
+}
+
+
+gint detector_shift(GtkWidget *widget, struct crystfeldemo *demo)
+{
+ GError *error = NULL;
+ GSubprocess *sub;
+
+ sub = g_subprocess_new(G_SUBPROCESS_FLAGS_NONE,
+ &error, "sh", "-c",
+ "${CRYSTFEL_DEMO_FILES}/detector-shift "
+ "${CRYSTFEL_DEMO_FILES}/cell.stream",
+ NULL);
+
+ if ( sub == NULL ) {
+ printf("Failed to start demo process\n");
+ }
+ return 0;
+}
+
+
static int change_to_tempdir()
{
char tmpdir[64];
@@ -302,6 +338,11 @@ int main(int argc, char *argv[])
gtk_builder_add_callback_symbol(builder, "stop_near_bragg",
G_CALLBACK(stop_near_bragg));
+ gtk_builder_add_callback_symbol(builder, "peakogram",
+ G_CALLBACK(peakogram));
+ gtk_builder_add_callback_symbol(builder, "detector_shift",
+ G_CALLBACK(detector_shift));
+
gtk_builder_connect_signals(builder, &demo);
gtk_widget_show_all(window);
gtk_main();