Class EnergyScannable

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

@ServiceInterface(Scannable.class) public class EnergyScannable extends ScannableBase
This is a simple scannable to allow the PGM and ID to be moved to a new energy, (specified in eV) together, as is the typical requirement of users. This scannable will report busy when either the PGM or ID report busy. This scannable will pass through updates received from the PGM. This scannable does not implement it's own limits but if the ID or PGM can't deliver the requested settings they will throw causing this device to throw.
  • Constructor Details

    • EnergyScannable

      public EnergyScannable()
  • Method Details

    • configure

      public void configure() throws FactoryException
      Description copied from class: ConfigurableBase
      Default implementation for classes that do not have to do any specific configuration.
      Classes that do their own configuration should *not* call this superclass function, as it may cause the object to appear configured before it really is.
      Specified by:
      configure in interface Configurable
      Overrides:
      configure in class ConfigurableBase
      Throws:
      FactoryException - if there is an error in configuration e.g. required variable not set or cannot connect to device
    • isBusy

      public boolean isBusy() throws DeviceException
      Description copied from interface: Scannable
      Check if the Scannable is moving/operating.
      Returns:
      true - if operation carried out by moveTo has not completed yet
      Throws:
      DeviceException
    • rawAsynchronousMoveTo

      public void rawAsynchronousMoveTo(Object position) throws DeviceException
      Description copied from class: ScannableBase
      [Consider abstract] Trigger a move/operation to an internal/hardware position and return immediately.
      Overrides:
      rawAsynchronousMoveTo in class ScannableBase
      Parameters:
      position - Position in its internal/hardware representation. e.g. with units and offsets removed
      Throws:
      DeviceException
      See Also:
    • rawGetPosition

      public Object rawGetPosition() throws DeviceException
      Description copied from class: ScannableBase
      [Consider abstract] Read the position in its internal (user) representation.
      Overrides:
      rawGetPosition in class ScannableBase
      Returns:
      the value represented by this Scannable
      Throws:
      DeviceException
      See Also:
    • stop

      public void stop()
      Description copied from class: ScannableBase
      Stop the current move/operation. Default behaviour is to do nothing. Inheriting classes have the option to implement this if their specific behaviour requires it.
      Specified by:
      stop in interface Scannable
      Overrides:
      stop in class ScannableBase
      See Also:
    • getPgm

      public Scannable getPgm()
    • setPgm

      public void setPgm(Scannable pgm)
    • getId

      public I05Apple getId()
    • setId

      public void setId(I05Apple id)
    • getUser_llm

      public double getUser_llm()
    • setUser_llm

      public void setUser_llm(double user_llm)
    • getUser_hlm

      public double getUser_hlm()
    • setUser_hlm

      public void setUser_hlm(double user_hlm)