aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel/src/hdf5-file.c
AgeCommit message (Collapse)Author
2020-07-29Port indexamajig to new API, part IIThomas White
This also removes a large chunk of legacy code
2020-07-29ImageFeatureList: Store panel number, not pointerThomas White
This makes the conversion to DataTemplate/detgeom MUCH easier.
2020-04-03Break down hdfile_get_string_value()Thomas White
There are just too many cases here. Variable/fixed length, array of either of those, with/without event structure. And that's just for real strings (not numbers that will be converted to strings). For now, I think the only unhandled case is an array of variable length strings. We can fix this when/if one turns up in the wild.
2020-03-31hdfile_get_string_value: Handle arrays of fixed length stringsThomas White
2020-03-31Catch NULL event in make_dataspacesThomas White
2020-03-31Improve error message in hdfile_get_string_value()Thomas White
2020-03-16hdfile_get_string_value: Handle arrays of variable length stringsThomas White
2020-02-28hdfile_get_value(): Check that ev->dim_length > 0 before looking in dim_entriesThomas White
2020-01-10Mass update of copyright datesThomas White
2019-07-16hdfile_get_string_value(): Detect non-scalar stringThomas White
Handling strings in HDF5 is already a complete pain. Eventually we should handle an array of strings, but it's too hard for now.
2019-07-16hdfile_get_value(): Increase maximum number of dimensions to 64Thomas White
3 might be too low for a hypothetical file format with, say, two wildcard dimensions.
2019-07-16Remove warnings about non-scalar valuesThomas White
Already handled by return codes.
2019-07-16Generalise get_ev_based_value() to handle non-multievent caseThomas White
... and replace hdfile_get_value() with it
2019-05-29Use Spectrum API for simulationThomas White
2019-05-14Remove image.num_peaks and num_saturated_peaksThomas White
These values were inconsistently set by different parts of the code, e.g. different peak search methods. num_saturated_peaks was even set during final integration. Now, the peak count is taken from the ImageFeatureList, so it's authoritative.
2019-05-07Update all source code comments to Doxygen formatThomas White
2019-04-03Consider pixel as bad if its value is NaN or infinityThomas White
2019-03-01Don't mask out entire image if bad pixel map can't be loadedThomas White
2019-01-29Fix some compiler warnings about string handlingThomas White
2019-01-29Fix a couple of memory leaksThomas White
2019-01-24Say what path was being opened when event enumeration failsThomas White
2018-11-14Fix error message about dimensionality of image dataThomas White
Fixes CRYS-205
2018-09-10Change image.spectrum to image.spectrum0 to use a different structure for ↵Alexandra Tolstikova
spectrum.
2017-09-19get_ev_based_value(): Allow integer typesThomas White
Just an oversight in the test
2017-09-15Fix uninitialised peak counts (for info in stream only)Thomas White
2017-06-21Close more leftover HDF5 handlesThomas White
2017-06-21Close leftover HDF5 handlesThomas White
2017-06-21hdf5_read2(): Fix exit pathThomas White
Bad pixel map is not allocated at this point.
2017-05-05Fill in photon energy, clen and adu for CBFsThomas White
This needed a bit of reorganisation and clarification of who is repsonsible for loading what. The low-level file loaders, e.g. hdf5_read and hdf5_read2 in hdf5-file.c or cbf_read in image.c, are responsible. There is a helper function adjust_centering_for_rail in detector.h which they can use. It seems like this could be done more cleanly at the imagefile layer. However, we need to make sure that the "old" hdfile API still works on its own, even when not accessed via the new imagefile API.
2017-05-03hdfile_set_image(): Remove panel argumentThomas White
Seems to have been added in 2014 and is not used at the moment
2017-04-13hdf5_read2(): Free buffers when read failsThomas White
2017-03-31Offset peak locations from HDF5 or CXI files by 0.5,0.5Thomas White
CrystFEL considers all peak locations to be distances from the corner of the detector panel, in pixel units, consistent with its description of detector geometry. In contrast, Cheetah considers the peak locations to be pixel indices in the data array. Therefore, a half-pixel offset is needed when importing the peak lists. For users who need the old behaviour, this commit adds a new option indexamajig --no-half-pixel-shift to deactivate this offset.
2017-02-16Fix mask path placeholder checkThomas White
The mask paths for all panels have to have the same number of placeholders, but the masks do not have to have the same number of placeholders as the panel data blocks. This also tidies up a few excess strdup() calls, and removes partial_event_substitution() because retrieve_full_path() can now handle the number of placeholders being too small.
2016-10-10Fix bad regionsThomas White
Previously, this was broken when not using a mask
2016-10-06hdf5_write_image(): Write the correct dataThomas White
2016-10-06hdf5_write_image(): Use correct dataspace for writingThomas White
2016-09-12Restore loading of saturation mapThomas White
2016-09-12Restore loading of bad pixel mapThomas White
2016-07-29Set image->dp in hdf5_read()Thomas White
2016-07-01Provide dataspace when reading data, mask and satmapThomas White
2016-07-01No more slab-relative coordinates in libcrystfelThomas White
2016-04-21Use correct dataspace when reading HDF5 stringsThomas White
2016-04-13Fix event enumerationThomas White
I broke it. Sorry about that.
2016-04-12Merge branch 'tom/testing'Thomas White
2016-04-01Add adu_per_photon (distinct from adu_per_eV)Thomas White
2016-04-01Fix silly bugs and tidy upThomas White
2016-03-31Handle placeholders in --hdf5-peaksThomas White
2016-03-24Fussiness/formattingThomas White
2016-03-24Simplify event enumeration a bitThomas White
2016-02-23Fixed bug with memspace size in write_locationValerio Mariani