function [] = recalculateToaGpsAndPlot()
%RECALCULATETOAGPSANDPLOT Summary of this function goes here
%   Detailed explanation goes here

global artoaWorkspace;

if ~isfield(artoaWorkspace, 'toaData')
    return;
end

%% Recalculate TOAs

% prepare toa data for recalculation
toaData = artoa.controller.getInputToaDataWithEmpiricalShift();

if artoaWorkspace.editOffsets.useOffsets
    artoaWorkspace.toaData = artoa.toa.recalculate( ...
        artoaWorkspace.float, ...
        toaData, ...
        artoaWorkspace.editOffsets.offsets ...
    );
else
    artoaWorkspace.toaData = toaData;
end

%% Calculate GPS TOAs
artoa.controller.edit.timeOfArrival.calculateGpsToas();

%% Update Offsets GUI
artoa.controller.edit.offsets.updateGui();

%% Replot all windows
artoa.controller.edit.updateAvailablePlots();

end