aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-05-28GUI: Store relative paths of resultsThomas White
This allows project folders to be relocated more easily. At the same time, I fixed the weird ownership semantics of add_indexing_result and add_merge_result. Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/31
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-05-25Fix dummy prototype for im_zmq_connectThomas White
2021-05-19GUI: Add button to reset FoM resolution range to entire dataThomas White
Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/11
2021-05-19GUI: Increase size of FoM min resolution boxThomas White
2021-05-17Resolve FIXMEs and TODOsThomas White
Prompted by the article linked below, for each FIXME/TODO I've either referenced an issue in the tracker, or removed it if it's not worth fixing. https://schleiss.io/plotting-source-code-todos-for-open-source-projects
2021-05-17GUI: Improve error handling for default_projectThomas White
2021-05-11indexamajig: Put cell tolerances and pk/int radii into separate objectsThomas White
Rationale: it makes the JSON structure a bit more logical, and enables things like the following: set_of_params_1.integration.radii == set_of_params_2.integration.radii params.peaksearch.radii == params.integration.radii Previously, these would have required multiple comparisons.
2021-05-11GUI: Fix loading of merging parameters from project fileThomas White
Apparently, I can't count.
2021-05-11GUI: Fix checkbox logic in CrystFELMergeOptsThomas White
2021-05-11GUI: Ensure that streams get re-scanned after job terminationThomas White
Previously, they would not get scanned because no job was running. We need one more scan after a job exits to make sure everything is up to date.
2021-05-11Add the 'real' implementation of CrystFELSymmetrySelectorThomas White
Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/13
2021-05-11Add set_combo_id()Thomas White
2021-05-07Add deselect_when_active()Thomas White
2021-05-07GUI: Add missing initialisation/load/save for ambi.backendThomas White
2021-05-05indexamajig: Add --zmq-requestThomas White
This (re-)adds the ability to get data via a request/reply socket. See afcb7b568947c for when it was removed.
2021-05-05indexamajig: Add a missing breakThomas White
This fixes --threshold when --zmq-subscribe is used.
2021-04-30GUI: Take optional stream on command lineThomas White
Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/12
2021-04-30GUI: Force results selector to "from GUI" when peak search window is openedThomas White
2021-04-30GUI: Fix force_refls_onThomas White
A silly cut+paste error.
2021-04-30GUI: When indexing one frame, don't force results selector or repeat peak searchThomas White
The logic behind forcing the results selector (to "Calculations within GUI") was that anything calculated in the GUI should appear under that selection only. Unfortunately, when loading a stream without images, there is nothing at all to be seen under this selection, not even an image. Forcing the selector resulted in proj->cur_image = NULL and therefore a crash when trying to index based on that. Similarly, the call to update_peaks expected image data, but there is none. In reality, we have a perfectly good image structure with peaks from the stream already. This allows a non-image stream to be "re-indexed" based on the peaks. Fixes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/33
2021-04-30indexamajig: Fix an incorrect error messageThomas White
2021-04-27indexamajig: Fix an error messageThomas White
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-23indexamajig: Mercilessly ignore short ZMQ messagesThomas White
This is a hack to filter out what seems like "keepalive" messages. It's nasty, but better than contaminating the stream with spurious chunks.
2021-04-23indexamajig: Add --zmq-subscribeThomas White
2021-04-23MsgPack: Implement extraction of image dataThomas White
2021-04-21indexamajig: Replace --zmq-msgpack with --zmq-inputThomas White
This removes some unnecessary work (getting the address from the file) and seems cleaner.
2021-04-21indexamajig: Set indexing,integration=null if we are not indexing at allThomas White
2021-04-21Remove index_args->max_n_peaksThomas White
It's not used anywhere.
2021-04-21indexamajig --harvest-file: Handle no cell or no indexing methodsThomas White
2021-04-20indexamajig: Fix --no-image-data/--no-mask-dataThomas White
2021-04-20Fix memory handling semantics for ZMQ dataThomas White
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-19Move file_exists to utils (and eliminate several duplicates)Thomas White
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-04-14cell_tool: Fix a big memory leakThomas White
2021-04-13FussinessThomas White
2021-04-13pattern_sim: Fix incorrect argument order for detgeom_transform_coordsThomas White
2021-04-08get_hkl: Write symmetry into output fileThomas White
2021-04-08Record infinite values as 'null' in JSONThomas White
Infinity isn't allowed in JSON. 'Null' should serve equally well to indicate "the relevant feature has been switched off".
2021-04-08indexamajig: Add a missing harvest parameterThomas White
2021-04-01Local BE: Fix ownership of workdir GFileThomas White
2021-04-01GUI: Wrap filenames in job scripts in quotes, where appropriateThomas White
This makes it work when the filenames contain spaces.
2021-04-01GUI: Clean up old tasks when infobar is removedThomas White
2021-03-31indexamajig: Handle spaces in filename when retrieving ID from queueThomas White
2021-03-30GUI: Fail more gracefully if image file is not presentThomas White
With the new header cache, it's possible to operate completely from the stream.
2021-03-30Add header caching layerThomas White
This simultaneously implements --copy-header/--copy-hdf5-field and gives access to metadata (e.g. detector position or wavelength) when loading from a stream with header-specified values.
2021-03-29indexamajig: Don't write harvest file if serial start is >1Thomas White
This will avoid multiple indexamajig processes from overwriting the others' files when running a batch job.
2021-03-26partialator: Add missing comma in JSONThomas White