Class ProcessingScannable

All Implemented Interfaces:
Device, ProcessingRequestProvider, Scannable, Configurable, Findable, gda.observable.IObservable

public class ProcessingScannable extends AbstractScanHook implements ProcessingRequestProvider
A scannable that provides a configurable processing request. Takes no other actions in scan
  • Constructor Details

    • ProcessingScannable

      public ProcessingScannable(String name)
  • Method Details

    • getProcessingRequest

      public Map<String,Collection<Object>> getProcessingRequest()
      Specified by:
      getProcessingRequest in interface ProcessingRequestProvider
    • setProcessingRequest

      public void setProcessingRequest(Map<String,Collection<Object>> newRequest)
      Set complete processing request removing any previous configuration
    • setProcessingRequest

      public void setProcessingRequest(String key, Collection<Object> config)
      Set the configuration for a processing key removing any previous configuration for that key
    • setProcessingRequest

      public void setProcessingRequest(String key, Object config)
      Set the configuration for a processing key (to a list containing a single value) removing any previous configuration for that key
    • addProcessingRequest

      public void addProcessingRequest(String key, Object value)
      Add configuration to a previous process, creating one if it doesn't exist
    • clearProcessing

      public void clearProcessing()
      Remove all configuration
    • clearProcessing

      public void clearProcessing(String key)
      Remove all configuration for a processing key
    • __getitem__

      public Collection<Object> __getitem__(String process)
      Python method to get processing configuration - returns unmodifiable copy
    • __setitem__

      public void __setitem__(String process, Iterable<Object> config)
      Python convenience method for setting processing configurations
       >>> pr['foo'] = ['hello', 'world'] # sets the config for the 'foo' entry
       
    • __setitem__

      public void __setitem__(String process, String config)
      Python convenience method for setting processing configuration to a single string
       >>> pr['foo'] = 'helloWorld' # sets the config for the 'foo' entry
       >>> pr['foo']
       ['helloWorld']
       >>>
       
    • __delitem__

      public void __delitem__(String process)
      Python method to remove a processing entry