aboutsummaryrefslogtreecommitdiff
path: root/src/process_image.c
AgeCommit message (Collapse)Author
2023-07-28indexamajig: Hooks for MilleThomas White
2023-06-01indexamajig: Add --asapo-output-stream (hits only)Thomas White
2023-05-05Move peak search parameters into separate structureThomas White
This change takes the peak parameters structure from gui_project.h, moves it to libcrystfel/peaks.h and uses it everywhere. It should slightly reduce the hassle involved with adding a new parameter. Four parameters (noisefilter, median_filter, check_hdf5_snr, use_saturated) were previously not part of the GUI project structure. Now they are, via the new structure. However, they are not yet exposed via the GUI and just take their default values.
2022-11-08indexamajig: Add --cell-parameters-onlyThomas White
2022-09-22Add fast mode for peakfinder8Alexandra Tolstikova
2022-06-02indexamajig: Track metadata (e.g. for ASAP::O)Thomas White
2022-06-02Generate placeholder filename/event earlierThomas White
Previously, a placeholder was put in the queue ("ZMQdata //" or "ASAPOdata //"), and replaced by image_read_data_block. Instead, the "final" placeholder can be put in the queue already. Note that ASAP::O, at least, will replace this placeholder with a filename delivered by the data transport.
2022-06-02Merge branch 'better-profiling'Thomas White
2022-06-02indexamajig: Put MsgPack peaks through validation procedure, like HDF5Thomas White
2022-06-02Update copyright datesThomas White
2022-05-04Add improved profilingThomas White
Improvements: - Recursive, so we can see how things are working at different levels - Everything is profiled, even if not explicitly labelled - No possibility of losing time - Detects mistakes if routines aren't wrapped correctly
2022-05-03Strip out time-accountsThomas White
2022-04-05indexamajig: Fix profiling when using streamed dataThomas White
2022-03-07indexamajig: Don't back up image data if not filteringThomas White
This takes a non-negligible amount of time (40 ms per frame for 16M), so should be skipped if not needed.
2022-03-07indexamajig: Use fine-grained profilingThomas White
2022-03-07Move time-accounts to libcrystfelThomas White
2022-03-07Add new time accounts (preparation for finer-grained profiling)Thomas White
2022-03-07indexamajig: Remove pointless time account/last task/pingThomas White
This doesn't do anything. The very next lines override all the settings.
2022-03-02Formatting and increased verbosityThomas White
2021-12-17indexamajig: Set file read time account for unpacking frame dataThomas White
2021-09-17indexamajig: Add --data-formatThomas White
2021-07-23indexamajig: Fix retry if file can't be opened with --wait-for-fileThomas White
2021-07-16Rename DST_* to DATA_SOURCE_TYPE_*Thomas White
On some systems, this conflicts with DST_NONE in sys/time.h.
2021-05-28Pass errors back when retrieving values for wavelength etcThomas White
Big improvement on just sending NAN back. Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/37
2021-04-23indexamajig: Generate a unique filename for ZMQ dataThomas White
The unique filename is needed by the GUI for looking up results in a stream. Otherwise, the filename is "(null)" for everything and the lookup just returns the first chunk in the stream. The filename is generated based on the unique serial number for each chunk, and is therefore unique across one run of indexamajig regardless of the number of worker processes (-j). This might have to change in future to accommodate jobs run across multiple nodes, if there is any demand for looking at results in one big concatenated stream. This also changes the condition for deciding when to look for a 'real' file, to take into account that there is always a non-NULL filename.
2021-04-19Unify loading of image data and header valuesThomas White
This moves the entry point for loading MsgPack data to a new function, image_read_data_block. Inside image.c, the image structure can be created using exactly the same functions as for data files.
2021-04-15Separate ZMQ from MessagePack, switch to pub/sub socketThomas White
Indexamajig uses only ZMQ, to receive streaming data, while libcrystfel uses only msgpack to implement another type of image format. The two of these are eventually tied together in process_image, which does this: if ( have_zmq_data ) interpret_zmq_data_as_msgpack; - however, they would be easy to split up if we wanted to do something else (CBF data over ZMQ, anyone?). This commit also switches the ZMQ connector to use a pub/sub socket instead of a request/reply one. This matches changes in OnDA. At the moment, the MessagePack image reader simply dumps the object to disk.
2021-03-05Mass update of copyright dates in source code commentsThomas White
2020-08-19Make Stream responsible for its own DataTemplateThomas White
It makes no sense for a different DataTemplate to be used for every frame in a stream. And this way makes everything much easier for users ot the API.
2020-07-31Move spectrum loading out of indexamajig/process_imageThomas White
2020-07-29Add --no-image-data and --no-mask-dataThomas White
2020-07-29Fix some memory bugsThomas White
2020-07-29Remove unused includesThomas White
2020-07-29Convert indexamajig to new Stream APIThomas White
2020-07-29Move MessagePack stuff to separate fileThomas White
Note the nicer separation: ZMQ is in indexamajig only, whereas MessagePack becomes something generally accessible through libcrystfel.
2020-07-29Remove references to old headersThomas White
2020-07-29Convert more bits to detgeomThomas White
2020-07-29Convert stream to DataTemplateThomas White
2020-07-29Convert estimate_peak_resolution to detgeomThomas White
2020-07-29Get rid of imagefile_field_list and stuff_from_streamThomas White
The only place this is used is in geoptimiser, to get the average_camera_length, itself a very bad solution.
2020-07-29Port indexamajig to new API, part IIThomas White
This also removes a large chunk of legacy code
2020-07-29Port indexamajig to new API, part IThomas White
2020-07-29Split off parse_peaksearch()Thomas White
2020-07-29get_peaks_msgpack(): Convert to new APIThomas White
2020-07-29indexamajig: Create detgeom structure from old detectorThomas White
Intermediate solution on the path to DataTemplate everywhere.
2020-07-29ImageFeatureList: Store panel number, not pointerThomas White
This makes the conversion to DataTemplate/detgeom MUCH easier.
2020-01-10Mass update of copyright datesThomas White
2019-10-17indexamajig: Shut down gracefully after failed image loadThomas White
2019-09-12indexamajig: Get rid of --fix-bandwidth / use bandwidth from geometry fileThomas White
2019-09-10indexamajig: Add --peaks=noneThomas White