aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2013-02-05 18:05:30 +0100
committerThomas White <taw@physics.org>2013-02-05 18:05:30 +0100
commit2f06e6a1abf28a22cf78a6c3d89596bec2a6a8c5 (patch)
treec7c8beda3593ae1dfe31a646f51787c992f59eef /libcrystfel
parent2ce85a95d86e350b785d206405e97d7317672188 (diff)
Fixes for indexing pipeline
Diffstat (limited to 'libcrystfel')
-rw-r--r--libcrystfel/src/index.c6
-rw-r--r--libcrystfel/src/mosflm.h4
-rw-r--r--libcrystfel/src/peaks.c10
-rw-r--r--libcrystfel/src/stream.c18
-rw-r--r--libcrystfel/src/stream.h10
5 files changed, 23 insertions, 25 deletions
diff --git a/libcrystfel/src/index.c b/libcrystfel/src/index.c
index 821be39a..cd6628e9 100644
--- a/libcrystfel/src/index.c
+++ b/libcrystfel/src/index.c
@@ -68,7 +68,6 @@ IndexingPrivate **prepare_indexing(IndexingMethod *indm, UnitCell *cell,
IndexingPrivate **iprivs;
while ( indm[nm] != INDEXING_NONE ) nm++;
- STATUS("Preparing %i indexing method%s.\n", nm, maybes(nm));
iprivs = malloc((nm+1) * sizeof(IndexingPrivate *));
for ( n=0; n<nm; n++ ) {
@@ -76,12 +75,13 @@ IndexingPrivate **prepare_indexing(IndexingMethod *indm, UnitCell *cell,
switch ( indm[n] & INDEXING_METHOD_MASK ) {
case INDEXING_DIRAX :
- iprivs[n] = dirax_prepare(indm[nm], cell, filename, det,
+ iprivs[n] = dirax_prepare(indm[n], cell, filename, det,
beam, ltl);
break;
case INDEXING_MOSFLM :
- iprivs[n] = NULL;
+ iprivs[n] = mosflm_prepare(indm[n], cell, filename, det,
+ beam, ltl);
break;
case INDEXING_REAX :
diff --git a/libcrystfel/src/mosflm.h b/libcrystfel/src/mosflm.h
index 1d296cb7..65aeb631 100644
--- a/libcrystfel/src/mosflm.h
+++ b/libcrystfel/src/mosflm.h
@@ -40,5 +40,9 @@
extern int run_mosflm(struct image *image, IndexingPrivate *ipriv);
+extern IndexingPrivate *mosflm_prepare(IndexingMethod indm, UnitCell *cell,
+ const char *filename,
+ struct detector *det,
+ struct beam_params *beam, float *ltl);
#endif /* MOSFLM_H */
diff --git a/libcrystfel/src/peaks.c b/libcrystfel/src/peaks.c
index 08595ef5..54ba6468 100644
--- a/libcrystfel/src/peaks.c
+++ b/libcrystfel/src/peaks.c
@@ -148,7 +148,7 @@ static int cull_peaks(struct image *image)
static void add_crystal_to_mask(struct image *image, struct panel *p,
- double ir_out, double ir_inn, int w, int h,
+ double ir_inn, int w, int h,
int *mask, Crystal *cr)
{
Reflection *refl;
@@ -200,8 +200,7 @@ static void add_crystal_to_mask(struct image *image, struct panel *p,
/* cfs, css relative to panel origin */
-static int *make_BgMask(struct image *image, struct panel *p,
- double ir_out, double ir_inn)
+static int *make_BgMask(struct image *image, struct panel *p, double ir_inn)
{
int *mask;
int w, h;
@@ -215,7 +214,7 @@ static int *make_BgMask(struct image *image, struct panel *p,
if ( image->crystals == NULL ) return mask;
for ( i=0; i<image->n_crystals; i++ ) {
- add_crystal_to_mask(image, p, ir_inn, ir_out,
+ add_crystal_to_mask(image, p, ir_inn,
w, h, mask, image->crystals[i]);
}
@@ -860,8 +859,7 @@ void integrate_reflections(struct image *image, int use_closer, int bgsub,
}
for ( i=0; i<image->det->n_panels; i++ ) {
int *mask;
- mask = make_BgMask(image, &image->det->panels[i],
- ir_out, ir_inn);
+ mask = make_BgMask(image, &image->det->panels[i], ir_inn);
if ( mask == NULL ) {
ERROR("Couldn't create background mask.\n");
return;
diff --git a/libcrystfel/src/stream.c b/libcrystfel/src/stream.c
index 113dc359..fbcbaf2e 100644
--- a/libcrystfel/src/stream.c
+++ b/libcrystfel/src/stream.c
@@ -52,16 +52,6 @@
#define LATEST_MAJOR_VERSION (2)
#define LATEST_MINOR_VERSION (1)
-#define CHUNK_START_MARKER "----- Begin chunk -----"
-#define CHUNK_END_MARKER "----- End chunk -----"
-#define PEAK_LIST_START_MARKER "Peaks from peak search"
-#define PEAK_LIST_END_MARKER "End of peak list"
-#define CRYSTAL_START_MARKER "--- Begin crystal"
-#define CRYSTAL_END_MARKER "--- End crystal"
-#define REFLECTION_START_MARKER "Reflections measured after indexing"
-/* REFLECTION_END_MARKER is over in reflist-utils.h because it is also
- * used to terminate a standalone list of reflections */
-
struct _stream
{
@@ -184,8 +174,6 @@ static void write_crystal(Stream *st, Crystal *cr, int include_reflections)
if ( include_reflections ) {
- fprintf(st->fh, "\n");
-
if ( reflist != NULL ) {
fprintf(st->fh, REFLECTION_START_MARKER"\n");
@@ -199,7 +187,7 @@ static void write_crystal(Stream *st, Crystal *cr, int include_reflections)
}
}
- fprintf(st->fh, CRYSTAL_START_MARKER"\n\n");
+ fprintf(st->fh, CRYSTAL_END_MARKER"\n");
}
@@ -226,19 +214,17 @@ void write_chunk(Stream *st, struct image *i, struct hdfile *hdfile,
copy_hdf5_fields(hdfile, i->copyme, st->fh);
if ( include_peaks ) {
- fprintf(st->fh, "\n");
write_peaks(i, st->fh);
}
fprintf(st->fh, "photon_energy_eV = %f\n",
J_to_eV(ph_lambda_to_en(i->lambda)));
- fprintf(st->fh, "\n");
for ( j=0; j<i->n_crystals; j++ ) {
write_crystal(st, i->crystals[j], include_reflections);
}
- fprintf(st->fh, CHUNK_END_MARKER"\n\n");
+ fprintf(st->fh, CHUNK_END_MARKER"\n");
fflush(st->fh);
}
diff --git a/libcrystfel/src/stream.h b/libcrystfel/src/stream.h
index 4d561cd2..cdce0ea2 100644
--- a/libcrystfel/src/stream.h
+++ b/libcrystfel/src/stream.h
@@ -38,6 +38,16 @@
struct image;
struct hdfile;
+#define CHUNK_START_MARKER "----- Begin chunk -----"
+#define CHUNK_END_MARKER "----- End chunk -----"
+#define PEAK_LIST_START_MARKER "Peaks from peak search"
+#define PEAK_LIST_END_MARKER "End of peak list"
+#define CRYSTAL_START_MARKER "--- Begin crystal"
+#define CRYSTAL_END_MARKER "--- End crystal"
+#define REFLECTION_START_MARKER "Reflections measured after indexing"
+/* REFLECTION_END_MARKER is over in reflist-utils.h because it is also
+ * used to terminate a standalone list of reflections */
+
typedef struct _stream Stream;
extern Stream *open_stream_for_read(const char *filename);