Class BeamScannable

All Implemented Interfaces:
IActivatable, IBoundable<Double>, ILevel, INameable, IScanAttributeContainer, IScannable<Double>, ITimeoutable, ITolerable<Double>, IPositionListenable

public class BeamScannable extends AbstractScannable<Double>
  • Constructor Details

    • BeamScannable

      public BeamScannable()
  • Method Details

    • getPosition

      public Double getPosition() throws ScanningException
      Description copied from interface: IBoundable
      The position is the value which should be: 1. Greater than or equal to the lower 2. Less than or equal to the upper. 3. One of the permitted values, if they are not null.
      Returns:
      Throws:
      ScanningException - if the position cannot be read for any reason
    • setPosition

      public Double setPosition(Double value, IPosition position) throws ScanningException
      Description copied from interface: IScannable
      Moves to the position required, blocking until it is complete. Similar to moveTo(...) in GDA8
      Parameters:
      value - that this scalar should take.
      position - if within in a scan or null if not within a scan.
      Returns:
      the new position attained by the device, if known. (Saves additional call to getPosition()) If not know the demand value is returned. NOTE if null is returned the system will call getPosition() again.
      Throws:
      ScanningException
    • setBeamSize

      public void setBeamSize(double beamSize)
    • getBeamSize

      public double getBeamSize()
    • abort

      public void abort() throws ScanningException, InterruptedException
      Description copied from interface: IScannable
      Call to terminate a movement before it is complete, for example when ScannablePositioner#abort is called due to an exception with another IScannable's movement
      Throws:
      ScanningException
      InterruptedException