cctools
batch_job.h
Go to the documentation of this file.
1 /*
2 Copyright (C) 2003-2004 Douglas Thain and the University of Wisconsin
3 Copyright (C) 2005- The University of Notre Dame
4 This software is distributed under the GNU General Public License.
5 See the file COPYING for details.
6 */
7 
8 #ifndef BATCH_JOB_H
9 #define BATCH_JOB_H
10 
11 #include <time.h>
12 
21 typedef int batch_job_id_t;
22 
24 typedef enum {
37 
40  time_t submitted;
41  time_t started;
42  time_t finished;
44  int exit_code;
46 };
47 
53 
62 batch_job_id_t batch_job_submit_simple(struct batch_queue *q, const char *cmdline, const char *input_files, const char *output_files);
63 
76 batch_job_id_t batch_job_submit(struct batch_queue *q, const char *cmd, const char *args, const char *infile, const char *outfile, const char *errfile, const char *extra_input_files, const char *extra_output_files);
77 
88 
100 batch_job_id_t batch_job_wait_timeout(struct batch_queue *q, struct batch_job_info *info, time_t stoptime);
101 
110 int batch_job_remove(struct batch_queue *q, batch_job_id_t jobid);
111 
117 
123 
130 void batch_queue_set_logfile(struct batch_queue *q, const char *logfile);
131 
143 void batch_queue_set_options(struct batch_queue *q, const char *options);
144 
152 void batch_queue_delete(struct batch_queue *q);
153 
159 const char *batch_queue_type_string();
160 
166 int batch_queue_port(struct batch_queue *q);
167 
168 #endif