Class ConvertNamedChannels<T extends NamedChannelsInput, S, U extends InputFromManager>

Object
AnchorBean<Task<T, SharedStateRememberConverted<U,S>>>
Task<T, SharedStateRememberConverted<U,S>>
ConvertNamedChannels<T,S,U>
Type Parameters:
T - the named-channels-input we expect to receive
S - shared-state of the task
U - the named-channels-input the delegate task contains
All Implemented Interfaces:
ReplaceTask<U,S>

public class ConvertNamedChannels<T extends NamedChannelsInput, S, U extends InputFromManager> extends Task<T, SharedStateRememberConverted<U,S>> implements ReplaceTask<U,S>
Converts NamedChannelsInput to a variety of others to match a delegate task.

The other types, to which a NamedChannelsInput will be converted are:

  1. MultiInput
  2. StackSequenceInput
  3. FileWithDirectoryInput
  4. ImageMetadataInput

Note that the presence of ReplaceTask gives special behavior to this task in the JobProcessor.

Author:
Owen Feehan
  • Constructor Details

    • ConvertNamedChannels

      public ConvertNamedChannels()
  • Method Details

    • beforeAnyJobIsExecuted

      public SharedStateRememberConverted<U,S> beforeAnyJobIsExecuted(Outputter outputter, ConcurrencyPlan concurrencyPlan, List<T> inputs, ParametersExperiment parameters) throws ExperimentExecutionException
      Specified by:
      beforeAnyJobIsExecuted in class Task<T extends NamedChannelsInput, SharedStateRememberConverted<U extends InputFromManager, S>>
      Throws:
      ExperimentExecutionException
    • doJobOnInput

      public void doJobOnInput(InputBound<T, SharedStateRememberConverted<U,S>> inputBound) throws JobExecutionException
      Specified by:
      doJobOnInput in class Task<T extends NamedChannelsInput, SharedStateRememberConverted<U extends InputFromManager, S>>
      Throws:
      JobExecutionException
    • inputTypesExpected

      public InputTypesExpected inputTypesExpected()
      Specified by:
      inputTypesExpected in class Task<T extends NamedChannelsInput, SharedStateRememberConverted<U extends InputFromManager, S>>
    • afterAllJobsAreExecuted

      public void afterAllJobsAreExecuted(SharedStateRememberConverted<U,S> sharedState, InputOutputContext context) throws ExperimentExecutionException
      Specified by:
      afterAllJobsAreExecuted in class Task<T extends NamedChannelsInput, SharedStateRememberConverted<U extends InputFromManager, S>>
      Throws:
      ExperimentExecutionException
    • hasVeryQuickPerInputExecution

      public boolean hasVeryQuickPerInputExecution()
      Specified by:
      hasVeryQuickPerInputExecution in class Task<T extends NamedChannelsInput, SharedStateRememberConverted<U extends InputFromManager, S>>
    • replaceTask

      public void replaceTask(Task<U,S> taskToReplace) throws OperationFailedException
      Specified by:
      replaceTask in interface ReplaceTask<T extends NamedChannelsInput, S>
      Throws:
      OperationFailedException
    • defaultOutputs

      public OutputEnabledMutable defaultOutputs()
      Overrides:
      defaultOutputs in class Task<T extends NamedChannelsInput, SharedStateRememberConverted<U extends InputFromManager, S>>
    • getTask

      public Task<U,S> getTask()
      The underlying task that will be called, perhaps with a different input-type.
    • setTask

      public void setTask(Task<U,S> task)
      The underlying task that will be called, perhaps with a different input-type.
    • getImageMetadataReader

      public ImageMetadataReader getImageMetadataReader()
      How to read the ImageMetadata from the file-system.
    • setImageMetadataReader

      public void setImageMetadataReader(ImageMetadataReader imageMetadataReader)
      How to read the ImageMetadata from the file-system.
    • getDefaultStackReaderForMetadata

      public StackReader getDefaultStackReaderForMetadata()
      Supplies to the imageMetadataReader to use, if no other reader is specified.
    • setDefaultStackReaderForMetadata

      public void setDefaultStackReaderForMetadata(StackReader defaultStackReaderForMetadata)
      Supplies to the imageMetadataReader to use, if no other reader is specified.