aboutsummaryrefslogtreecommitdiff
path: root/src/image.h
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2011-11-15 13:45:44 +0100
committerThomas White <taw@physics.org>2012-02-22 15:27:40 +0100
commitfb9df2f18def2d0b8fbdbc854c8a8c10e39ce6d9 (patch)
tree6bd1db2a9a3af25511c57a802b1a30b4979cd085 /src/image.h
parent45059e51e4536db9021ca22378cbffa01b5d91c8 (diff)
Remove duplicated files
Diffstat (limited to 'src/image.h')
-rw-r--r--src/image.h184
1 files changed, 0 insertions, 184 deletions
diff --git a/src/image.h b/src/image.h
deleted file mode 100644
index e21ebe85..00000000
--- a/src/image.h
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
- * image.h
- *
- * Handle images and image features
- *
- * (c) 2006-2011 Thomas White <taw@physics.org>
- *
- * Part of CrystFEL - crystallography with a FEL
- *
- */
-
-
-#ifdef HAVE_CONFIG_H
-#include <config.h>
-#endif
-
-#ifndef IMAGE_H
-#define IMAGE_H
-
-#include <stdint.h>
-#include <complex.h>
-#include <sys/types.h>
-
-#include <utils.h>
-#include <cell.h>
-#include <detector.h>
-#include <reflist.h>
-
-
-#define MAX_CELL_CANDIDATES (32)
-
-
-/* Structure describing a feature in an image */
-struct imagefeature {
-
- struct image *parent;
- double fs;
- double ss;
- double intensity;
-
- /* Reciprocal space coordinates (m^-1 of course) of this feature */
- double rx;
- double ry;
- double rz;
-
- /* Internal use only */
- int valid;
-
- const char *name;
-};
-
-/* An opaque type representing a list of image features */
-typedef struct _imagefeaturelist ImageFeatureList;
-
-
-/**
- * image:
- *
- * <programlisting>
- * struct image
- * {
- * float *data;
- * uint16_t *flags;
- * double *twotheta;
- *
- * UnitCell *indexed_cell;
- * UnitCell *candidate_cells[MAX_CELL_CANDIDATES];
- * int ncells;
-
- * struct detector *det;
- * struct beam_params *beam;
- * char *filename;
- * const struct copy_hdf5_field *copyme;
- *
- * int id;
- *
- * double m;
- *
- * double lambda;
- * double div;
- * double bw;
- * double i0;
- * int i0_available;
- * double osf;
- * double profile_radius;
- * int pr_dud;
- *
- * int width;
- * int height;
- *
- * RefList *reflections;
- *
- * ImageFeatureList *features;
- * };
- * </programlisting>
- *
- * The field <structfield>data</structfield> contains the raw image data, if it
- * is currently available. The data might be available throughout the
- * processing of an experimental pattern, but it might not be available when
- * simulating, scaling or merging patterns. Similarly,
- * <structfield>flags</structfield> contains an array of the same dimensions
- * as <structfield>data</structfield> to contain the bad pixel flags.
- * <structfield>twotheta</structfield> likewise contains an array of 2*theta
- * (scattering angle) values in radians, since these values are generated as a
- * by-product of the scattering vector calculation and can be used later for
- * calculating intensities from differential scattering cross sections.
- *
- * <structfield>candidate_cells</structfield> is an array of unit cells directly
- * returned by the low-level indexing system. <structfield>ncells</structfield>
- * is the number of candidate unit cells which were found. The maximum number
- * of cells which may be returned is <function>MAX_CELL_CANDIDATES</function>.
- * <structfield>indexed_cell</structfield> contains the "correct" unit cell
- * after cell reduction or matching has been performed. The job of the cell
- * reduction is to convert the list of candidate cells into a single indexed
- * cell, or <function>NULL</function> on failure.
- *
- * <structfield>copyme</structfield> represents a list of HDF5 fields to copy
- * to the output stream.
- **/
-struct image;
-
-struct image {
-
- float *data;
- uint16_t *flags;
- double *twotheta;
-
- UnitCell *indexed_cell;
- UnitCell *candidate_cells[MAX_CELL_CANDIDATES];
- int ncells;
-
- struct detector *det;
- struct beam_params *beam; /* The nominal beam parameters */
- char *filename;
- const struct copy_hdf5_field *copyme;
-
- int id; /* ID number of the thread
- * handling this image */
-
- /* Information about the crystal */
- double m; /* Mosaicity in radians */
-
- /* Per-shot radiation values */
- double lambda; /* Wavelength in m */
- double div; /* Divergence in radians */
- double bw; /* Bandwidth as a fraction */
- double i0; /* Incident intensity */
- int i0_available; /* 0 if f0 wasn't available
- * from the input. */
- double osf; /* Overall scaling factor */
- double profile_radius; /* Radius of reflection */
- int pr_dud; /* Post refinement failed */
-
- int width;
- int height;
-
- /* Integrated (or about-to-be-integrated) reflections */
- RefList *reflections;
-
- /* Detected peaks */
- ImageFeatureList *features;
-
-};
-
-
-/* Feature lists */
-extern ImageFeatureList *image_feature_list_new(void);
-
-extern void image_feature_list_free(ImageFeatureList *flist);
-
-extern void image_add_feature(ImageFeatureList *flist, double x, double y,
- struct image *parent, double intensity,
- const char *name);
-
-extern void image_remove_feature(ImageFeatureList *flist, int idx);
-
-extern struct imagefeature *image_feature_closest(ImageFeatureList *flist,
- double fs, double ss,
- double *d, int *idx);
-
-extern int image_feature_count(ImageFeatureList *flist);
-extern struct imagefeature *image_get_feature(ImageFeatureList *flist, int idx);
-
-#endif /* IMAGE_H */