aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2010-01-08 18:22:59 +0100
committerThomas White <taw@physics.org>2010-01-08 18:22:59 +0100
commit0c14d9175d5390a4620a7f82cbf33264b45f36bc (patch)
tree4f3ee8510b5a5818bf9c78cd77e253a059da3d37
parent5cd70513c3c00820a76ce11059774ef08e8e5118 (diff)
Add option to skip indexing program
-rw-r--r--src/dirax.c4
-rw-r--r--src/dirax.h2
-rw-r--r--src/indexamajig.c11
3 files changed, 10 insertions, 7 deletions
diff --git a/src/dirax.c b/src/dirax.c
index ff136ae5..0c509e06 100644
--- a/src/dirax.c
+++ b/src/dirax.c
@@ -497,7 +497,7 @@ static void search_peaks(struct image *image)
}
-void index_pattern(struct image *image)
+void index_pattern(struct image *image, int no_index)
{
unsigned int opts;
int saved_stderr;
@@ -506,6 +506,8 @@ void index_pattern(struct image *image)
/* Do peak search and splurge out 'xfel.drx' */
search_peaks(image);
+ if ( no_index ) return;
+
saved_stderr = dup(STDERR_FILENO);
image->dirax_pid = forkpty(&image->dirax_pty, NULL, NULL, NULL);
if ( image->dirax_pid == -1 ) {
diff --git a/src/dirax.h b/src/dirax.h
index 2facc4f6..f4b82ba5 100644
--- a/src/dirax.h
+++ b/src/dirax.h
@@ -18,7 +18,7 @@
#endif
-extern void index_pattern(struct image *image);
+extern void index_pattern(struct image *image, int no_index);
#endif /* DIRAX_H */
diff --git a/src/indexamajig.c b/src/indexamajig.c
index 6f09df30..f5474de6 100644
--- a/src/indexamajig.c
+++ b/src/indexamajig.c
@@ -36,6 +36,8 @@ static void show_help(const char *s)
"\n"
" -i, --input=<filename> Specify file containing list of images to process.\n"
" '-' means stdin, which is the default.\n"
+" --no-index Do everything else (including fine peak search),\n"
+" but don't invoke the indexing program.\n"
"\n");
}
@@ -192,16 +194,18 @@ int main(int argc, char *argv[])
char *rval;
int n_images;
int n_hits;
+ int config_noindex = 0;
/* Long options */
const struct option longopts[] = {
{"help", 0, NULL, 'h'},
{"input", 1, NULL, 'i'},
+ {"no-index", 0, &config_noindex, 1},
{0, 0, NULL, 0}
};
/* Short options */
- while ((c = getopt_long(argc, argv, "hi:", longopts, NULL)) != -1) {
+ while ((c = getopt_long(argc, argv, "hi:w", longopts, NULL)) != -1) {
switch (c) {
case 'h' : {
@@ -264,12 +268,9 @@ int main(int argc, char *argv[])
hdf5_read(hdfile, &image);
fom = image_fom(&image);
- printf("%6i %i\n", n_images, fom);
if ( fom > 0 ) {
- printf("%s\n", line);
-
- index_pattern(&image);
+ index_pattern(&image, config_noindex);
n_hits++;