aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel/src/index.c
diff options
context:
space:
mode:
Diffstat (limited to 'libcrystfel/src/index.c')
-rw-r--r--libcrystfel/src/index.c29
1 files changed, 22 insertions, 7 deletions
diff --git a/libcrystfel/src/index.c b/libcrystfel/src/index.c
index 6f046ab6..6b36af3e 100644
--- a/libcrystfel/src/index.c
+++ b/libcrystfel/src/index.c
@@ -44,6 +44,7 @@
#include "utils.h"
#include "peaks.h"
#include "dirax.h"
+#include "asdf.h"
#include "mosflm.h"
#include "xds.h"
#include "detector.h"
@@ -92,12 +93,16 @@ IndexingPrivate **prepare_indexing(IndexingMethod *indm, UnitCell *cell,
iprivs[n] = dirax_prepare(&indm[n], cell, det, ltl);
break;
+ case INDEXING_ASDF :
+ iprivs[n] = asdf_prepare(&indm[n], cell, det, ltl);
+ break;
+
case INDEXING_MOSFLM :
iprivs[n] = mosflm_prepare(&indm[n], cell, det, ltl);
break;
case INDEXING_XDS :
- iprivs[n] = xds_prepare(&indm[n], cell, det, ltl);
+ iprivs[n] = xds_prepare(&indm[n], cell, det, ltl);
break;
case INDEXING_REAX :
@@ -167,6 +172,10 @@ void cleanup_indexing(IndexingMethod *indms, IndexingPrivate **privs)
dirax_cleanup(privs[n]);
break;
+ case INDEXING_ASDF :
+ asdf_cleanup(privs[n]);
+ break;
+
case INDEXING_MOSFLM :
mosflm_cleanup(privs[n]);
break;
@@ -236,6 +245,10 @@ static int try_indexer(struct image *image, IndexingMethod indm,
return run_dirax(image, ipriv);
break;
+ case INDEXING_ASDF :
+ return run_asdf(image, ipriv);
+ break;
+
case INDEXING_MOSFLM :
return run_mosflm(image, ipriv);
break;
@@ -272,11 +285,6 @@ void index_pattern(struct image *image,
if ( indms == NULL ) return;
- if ( image_feature_count(image->features) > 10000 ) {
- STATUS("WARNING: The number of peaks is very large for '%s'.\n",
- image->filename);
- }
-
map_all_peaks(image);
image->crystals = NULL;
image->n_crystals = 0;
@@ -373,6 +381,10 @@ char *indexer_str(IndexingMethod indm)
strcpy(str, "dirax");
break;
+ case INDEXING_ASDF :
+ strcpy(str, "asdf");
+ break;
+
case INDEXING_MOSFLM :
strcpy(str, "mosflm");
break;
@@ -451,13 +463,16 @@ IndexingMethod *build_indexer_list(const char *str)
if ( strcmp(methods[i], "dirax") == 0) {
list[++nmeth] = INDEXING_DEFAULTS_DIRAX;
+ } else if ( strcmp(methods[i], "asdf") == 0) {
+ list[++nmeth] = INDEXING_DEFAULTS_ASDF;
+
} else if ( strcmp(methods[i], "mosflm") == 0) {
list[++nmeth] = INDEXING_DEFAULTS_MOSFLM;
} else if ( strcmp(methods[i], "grainspotter") == 0) {
list[++nmeth] = INDEXING_DEFAULTS_GRAINSPOTTER;
- } else if ( strcmp(methods[i], "xds") == 0) {
+ } else if ( strcmp(methods[i], "xds") == 0) {
list[++nmeth] = INDEXING_DEFAULTS_XDS;
} else if ( strcmp(methods[i], "reax") == 0) {