Method wrappers#
HTTomo uses processing methods from external backend libraries. Because these methods accept different inputs and produce different outputs, HTTomo uses wrappers to provide a consistent interface between the pipeline steps and each method action.
Wrappers prepare method inputs, handle CPU/GPU data transfers, invoke the backend method and manage its outputs. Supporting information from Integrating methods with httomo-backends describes requirements such as the data pattern, implementation, memory usage and padding.
Fig. 23 The HTTomo wrapper layer connects backend methods to the processing pipeline and handles their method-specific inputs and outputs.#
Wrapper types#
HTTomo provides five main wrapper types:
Generic: passes data to standard processing methods and returns the result.
Normalisation: supplies projection data, flats and darks, then returns normalised data.
Centering: prepares the required projections or sinograms and produces a centre-of-rotation value.
Reconstruction: supplies the data, projection angles and reconstruction parameters, including the centre of rotation.
Image saver: transfers data to the CPU when necessary and writes images to storage without changing the pipeline data.