Here are a few diagrams to convey the layout and flow-of-control within the Imager-module classes.
Note : This diagram shows the main calls that are common to all derivatives of ImageSkyModels and FTMachines. The actual code tree has much more code for many special-cases controlled by various state variables. Various set-up functions are not listed. There are also some naming differences between the diagram and code : The function CubeSkyEquation::calculateResidualImages() is actually CubeSkyEquation::gradientsChiSquared() in the code. Also, ImageSkyModel::solve() is in some cases, ImageSkyModel::solveResiduals(). The Deconvolver interface is not consistent across all minor-cycle algorithms.