aboutsummaryrefslogtreecommitdiff
path: root/src/gui_backend_slurm.c
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2020-08-21 16:07:02 +0200
committerThomas White <taw@physics.org>2020-08-21 16:07:02 +0200
commit9c57e7d61658fb79967e1b1a46c98995a1fed020 (patch)
treea75e25d5ec05d9c50cdf9657a4eff4455272be1b /src/gui_backend_slurm.c
parent0f0ff14be48f5e4d9679f30286614db3d9c062d3 (diff)
Framework for backend parameters via GUI
Diffstat (limited to 'src/gui_backend_slurm.c')
-rw-r--r--src/gui_backend_slurm.c82
1 files changed, 82 insertions, 0 deletions
diff --git a/src/gui_backend_slurm.c b/src/gui_backend_slurm.c
new file mode 100644
index 00000000..1ac0328b
--- /dev/null
+++ b/src/gui_backend_slurm.c
@@ -0,0 +1,82 @@
+/*
+ * gui_backend_slurm.c
+ *
+ * GUI backend for running jobs via SLURM
+ *
+ * Copyright © 2020 Deutsches Elektronen-Synchrotron DESY,
+ * a research centre of the Helmholtz Association.
+ *
+ * Authors:
+ * 2020 Thomas White <taw@physics.org>
+ *
+ * This file is part of CrystFEL.
+ *
+ * CrystFEL is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * CrystFEL is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with CrystFEL. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+#include <pty.h>
+#include <glib.h>
+#include <sys/wait.h>
+#include <gtk/gtk.h>
+
+#include "crystfel_gui.h"
+
+
+struct slurm_backend_priv
+{
+ int dummy;
+};
+
+
+static void init_backend(struct crystfelproject *proj)
+{
+}
+
+
+static void shutdown_backend(struct crystfelproject *proj)
+{
+}
+
+
+static void cancel(struct crystfelproject *proj)
+{
+}
+
+
+static int run_unitcell(struct crystfelproject *proj,
+ const char *algo)
+{
+ return 0;
+}
+
+
+static GtkWidget *make_parameters(void)
+{
+ return gtk_label_new("SLURM params");
+}
+
+
+const struct crystfel_backend _backend_slurm =
+ {
+ .name = "slurm",
+ .friendly_name = "SLURM",
+ .make_parameters = make_parameters,
+ .init = init_backend,
+ .shutdown = shutdown_backend,
+ .run_unitcell = run_unitcell,
+ .cancel = cancel,
+ };
+
+const struct crystfel_backend *backend_slurm = &_backend_slurm;