def METHOD_NAME(self, module, num_modules, image_set_index, num_image_sets):
    """
    Update the historical execution times, which are used as the
    bases for projecting the time that remains.  Also update the
    labels that show the current module and image set.  This
    method is called by the pipelinecontroller at the beginning of
    every module execution to update the progress bar.
    """
    self.current_module = module
    self.current_module_name = module.module_name
    self.num_modules = num_modules
    self.image_set_index = image_set_index
    self.num_image_sets = num_image_sets
    if self.end_times is None:
        # One extra element at the beginning for the start time
        self.end_times = numpy.zeros(1 + num_modules * num_image_sets)
    module_index = module.module_num - 1  # make it zero-based
    index = image_set_index * num_modules + (module_index - 1)
    self.end_times[1 + index] = self.elapsed_time()
    self.update()