Oh! I see what you mean, we need the two separate implementations because this "compute_gauss_newton_step" corresponds to the "EMMetric" (for multi-modal registration) while the above corresponds to the "SSDMetric" (for mono-modal registration).