aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel/src/datatemplate.c
AgeCommit message (Collapse)Author
2021-10-20Reject geometry file if wavelength isn't specifiedThomas White
2021-09-07lookup_panel: Check that panel name is not NULLThomas White
2021-09-03Fix typo and failing tests from previous commitThomas White
2021-09-03Reject geometry file if fs and ss directions are not specifiedThomas White
2021-07-22Clean up shadowed variablesThomas White
2021-07-21Reduce variable scope where possibleThomas White
2021-07-15Fix an incorrect error messageThomas White
2021-05-11Set panel for bad region when there is only one panelThomas White
When there is only one panel, we can safely assume that fs/ss bad regions refer to it without it being stated in the geometry file. This allows some older Pilatus geometry files to be used without complaints. A further improvement would be to determine the panel when all the data comes from one "slab" so the panel is still ambiguous. However, on further thought it seems like a lot of work to do this reliably in all cases. I'm not even sure that this case in particular is causing anyone problems. Closes: https://gitlab.desy.de/thomas.white/crystfel/-/issues/32
2021-04-27Complain if there are unused defaults in geometry fileThomas White
This will help to avoid mistakes when people put statements at the end of the geometry file, rather than the top. Closes https://gitlab.desy.de/thomas.white/crystfel/-/issues/20.
2021-04-27Rename libcrystfel's config.h to libcrystfel-config.hThomas White
This removes the big potential for confusion, which has happened several times (see e.g. 095cbebaf6). It also fixes in-tree builds with CMake (but seriously, always use out-of-tree builds). Fixes #2.
2021-04-16Remove requirement for data path to contain "/"Thomas White
For data formats other than HDF5, the location can be anything.
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-11indexamajig: Use static wavelength from DataTemplate as estimateThomas White
If the geometry file contains a literal wavelength, then let's use it. That's better than nagging the user for a --wavelength-estimate.
2021-03-09Add the ability to use multiple bad pixel masks at onceThomas White
2021-03-05Mass update of copyright dates in source code commentsThomas White
2021-03-01data_template_new_from_string: Fail gracefully if fs/ss bad region lacks ↵Thomas White
panel name Fixes CRYS-245
2021-02-15Check that bad regions are actually within panel boundsThomas White
2021-01-27DataTemplate: fix some small memory leaksThomas White
2021-01-14Correct bad region coordinatesThomas White
Bad regions are specified (in the geometry file) in terms of the "file" coordinates, which might be different to the panel-relative ones.
2021-01-14Avoid very slow loop over pixels to create bad pixel mapThomas White
Bad regions specified in terms of x/y still require an iteration over all pixels of the detector, but I don't see an easy way around that. Avoiding x/y bad regions will give best performance.
2021-01-14data_template_new_from_string: Fix error pathThomas White
2021-01-08Update documentation about max_adu, and add a warningThomas White
2020-12-18Add peak_list_type in geometry fileThomas White
2020-12-16Add flag_{lessthan,morethan,equal} in geometry fileThomas White
This makes handling Pilatus/Eiger files, as well as many others, much easier.
2020-09-17Ensure that fs dimension has higher index than ssThomas White
Reading from HDF5 cannot rearrange dimensions, only select a chunk. Therefore, the layout in memory needs to match the file.
2020-08-19Set the same initial beam parameters as beforeThomas White
2020-08-07Expose rigid groupsThomas White
2020-08-04Add image_create_for_simulation()Thomas White
...and factorise common code
2020-07-31Set bandwidth in image structureThomas White
2020-07-30Fix placeholder countingThomas White
2020-07-30Eliminate duplicate symbolsThomas White
This makes searching easier, and also permits Meson's unity build mode.
2020-07-29Add detector_shift_{x,y} to geometry fileThomas White
2020-07-29Remove coffset from parse_toplevelThomas White
It's handled already by the parse_field_for_panel(defaults, ...)
2020-07-29Add wavelength and electron_voltage, plus units, to geometry fileThomas White
2020-07-29Add an error path for parse_toplevelThomas White
2020-07-29Get rid of photon_energy_scaleThomas White
2020-07-29data_template_free: Allow NULLThomas White
2020-07-29Set a default data locationThomas White
2020-07-29Reject geometry file if it contains unrecognised linesThomas White
2020-07-29Set default dimensions (0=ss, 1=fs)Thomas White
2020-07-29Remove dtempl->defaultsThomas White
This is 100% private to the parser
2020-07-29Require mask/satmap paths to have fewer placeholders than dataThomas White
2020-07-29Check that paths for all panels have the same number of placeholdersThomas White
2020-07-29FussinessThomas White
2020-07-29Remove events.c, part 2Thomas White
New event parsing, done at the last minute in image-hdf5.c
2020-07-29Remove peak_info_locationThomas White
peak_list already exists
2020-07-29Remove events.c, part 1Thomas White
2020-07-29Set up adu_per_photon correctlyThomas White
2020-07-29Implement camera length units in data_template_to_detgeomThomas White
This is a special reduced version which cannot load metadata from an file, because no file is available in this case.
2020-07-29Tidy upThomas White
Regarding check_path_existence: This was a very complicated procedure, for not very much gain. The attempt to open a dataset for real, which invariably follows, can still fail after this check.