Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
This (re-)adds the ability to get data via a request/reply socket.
See afcb7b568947c for when it was removed.
|
|
This fixes --threshold when --zmq-subscribe is used.
|
|
Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/12
|
|
|
|
A silly cut+paste error.
|
|
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
|
|
|
|
|
|
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.
|
|
This is a hack to filter out what seems like "keepalive" messages. It's
nasty, but better than contaminating the stream with spurious chunks.
|
|
|
|
|
|
This removes some unnecessary work (getting the address from the file)
and seems cleaner.
|
|
|
|
It's not used anywhere.
|
|
|
|
|
|
|
|
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.
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
|
Infinity isn't allowed in JSON. 'Null' should serve equally well to
indicate "the relevant feature has been switched off".
|
|
|
|
|
|
This makes it work when the filenames contain spaces.
|
|
|
|
|
|
With the new header cache, it's possible to operate completely from the
stream.
|
|
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.
|
|
This will avoid multiple indexamajig processes from overwriting the
others' files when running a batch job.
|
|
|
|
|
|
Whoops.
|
|
|
|
|
|
"cmfilter" and "integrate_saturated" were unused.
|
|
Unfortunately, PinkIndexer needs the real camera length for its centre
refinement. Giving a fake value and scaling the resulting shift does
not work - the indexing rate drops with even a small error.
Ideally, this would work in the same way as --wavelength-estimate, by
using a static value from the geometry file if it's given. However,
this is rather complicated to implement because of the way all the units
stuff is implemented. Therefore, this is left as an improvement for the
future.
|
|
The FIXMEs have both already been fixed.
|
|
|
|
This give FromFile its own private command-lien option processing, like
the other indexers. It removes the ability to auto-generate the
solution filename, but I don't think there's a way to do that without
breaking abstractions.
|
|
|
|
|
|
|