Skip to content

Parameters refactor

Raza, Zamaan requested to merge parameters_refactor into develop

Resolves #117 (closed)

Refactor primarily of IPeakIntegrator, ShapeLibrary and the shape library construction/peak prediction parts of core, simplifying the way parameters are passed, via a structure rather than per-variable setters.

I had to use a slightly kludgy fix since a *Parameters object generated in Python and passed via SWIG seems to be destroyed when passing as an argument, e.g. as in Experiment::buildShapeLibrary, resulting in the default parameter set being passed. To resolve this (basically only for SWIG), I added public *Parameters objects to the Experiment class, and in Python it is necessary to directly manipulate the members of these structures, and pass them to the relevant functions as necessary.

I also removed some redundant variable (e.g. peak_scale or scale and peak_end are the same thing) and added some forward declarations.

Edited by Raza, Zamaan

Merge request reports