Class NormProc

All Implemented Interfaces:
Findable, MalcolmSwmrProcessor<NXdetector>

public class NormProc extends AbstractMalcolmSwmrProcessor<NXdetector>
Processor for Malcolm scans which calculates a background subtracted signal using ROIs and optionally normalise using values from transmission and attenuator scannables.

Adapted from beamline provided Jython script.

  • Constructor Details

    • NormProc

      public NormProc()
  • Method Details

    • initialise

      public void initialise(NexusScanInfo info, AbstractNexusObjectProvider<NXdetector> nexusProvider)
      Description copied from interface: MalcolmSwmrProcessor
      Prepare processor to receive data. For example create the lazy datasets and add to the NexusObjectWrapper
      Specified by:
      initialise in interface MalcolmSwmrProcessor<NXdetector>
      Overrides:
      initialise in class AbstractMalcolmSwmrProcessor<NXdetector>
      Parameters:
      info - the current scan info
      nexusProvider - Nexus provider to write datasets into
    • configureNexusProvider

      protected void configureNexusProvider(AbstractNexusObjectProvider<NXdetector> nexusObjectProvider)
      Specified by:
      configureNexusProvider in class AbstractMalcolmSwmrProcessor<NXdetector>
    • processFrame

      public void processFrame(org.eclipse.january.dataset.Dataset data, SliceFromSeriesMetadata metaSlice)
      Description copied from interface: MalcolmSwmrProcessor
      Perform processing for the data. E.g calculate a statistic and write to the NXdata
      Parameters:
      data - current detector frame to process
      metaSlice - metadata fror this frame
    • isEnabled

      public boolean isEnabled()
      Description copied from interface: MalcolmSwmrProcessor
      Check if processor is currently enabled
      Specified by:
      isEnabled in interface MalcolmSwmrProcessor<NXdetector>
      Overrides:
      isEnabled in class AbstractMalcolmSwmrProcessor<NXdetector>
    • getRoiProc

      public RoiProc getRoiProc()
    • setRoiProc

      public void setRoiProc(RoiProc roiProc)
    • getSignalRoiIndex

      public int getSignalRoiIndex()
    • setSignalRoiIndex

      public void setSignalRoiIndex(int signalRoiIndex)
    • getBackgroundRoiIndices

      public List<Integer> getBackgroundRoiIndices()
    • setBackgroundRoiIndices

      public void setBackgroundRoiIndices(List<Integer> backgroundRoiIndices)
    • isNorm

      public boolean isNorm()
    • setNorm

      public void setNorm(boolean norm)
    • getAttenuatorScannableName

      public String getAttenuatorScannableName()
    • setAttenuatorScannableName

      public void setAttenuatorScannableName(String attenuatorScannableName)
    • getAttenuatorScannable

      public Scannable getAttenuatorScannable()
    • setAttenuatorScannable

      public void setAttenuatorScannable(Scannable attenuatorScannable)
    • getTransmissionFieldName

      public String getTransmissionFieldName()
    • setTransmissionFieldName

      public void setTransmissionFieldName(String transmissionFieldName)
    • getScale

      public double getScale()
    • setScale

      public void setScale(double scale)
    • isBackgroundSubtractionEnabled

      public boolean isBackgroundSubtractionEnabled()
    • setBackgroundSubtractionEnabled

      public void setBackgroundSubtractionEnabled(boolean backgroundSubtractionEnabled)
    • setMonitorScannable

      public void setMonitorScannable(Scannable monitorScannable)