Package gda.device

Interface FilterArray

All Superinterfaces:
Configurable, Device, Findable, gda.observable.IObservable
All Known Implementing Classes:
DummyFilterArray, FilterArrayBase

public interface FilterArray extends Device
Interface to control an array of filters for beam attenuation, for example EpicsFilterArray.
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    Returns the current absorption level.
    double
    Returns the energy value currently being used to calculate the absorption and transmission.
    double
    Returns the wavelength value currently being used to calculate the absorption and transmission.
    double
    Returns the current transmission level.
    boolean
    Returns true if a monochromator's setting is being used in the calculations rather than the energy supplied via the setCalculationEnergy method.
    void
    setAbsorption(double absorption)
    Tells the filter array to move so that, for the current energy used in its calculations, the absorption is as close as possible to the value supplied
    void
    setCalculationEnergy(double energy)
    Sets the energy value which would be used to calculate the absorption and transmission if isUsingMonoEnergy return false.
    void
    setCalculationWavelength(double wavelength)
    Sets the wavelength value which would be used to calculate the absorption and transmission if isUsingMonoEnergy return false.
    void
    setTransmission(double transmission)
    Tells the filter array to move so that, for the current energy used in its calculations, the transmission is as close as possible to the value supplied.
    void
    setUseMonoEnergy(boolean useEnergy)
    Tells the filter array to perform calculations using the current setting of a monochromator rather than a value supplied via its setCalculationEnergy method.

    Methods inherited from interface gda.factory.Configurable

    configure, isConfigureAtStartup, isConfigured, reconfigure

    Methods inherited from interface gda.device.Device

    close, getAttribute, getProtectionLevel, setAttribute, setProtectionLevel

    Methods inherited from interface gda.factory.Findable

    getName, setName

    Methods inherited from interface gda.observable.IObservable

    addIObserver, deleteIObserver, deleteIObservers
  • Method Details

    • getAbsorption

      double getAbsorption() throws DeviceException
      Returns the current absorption level. This value is calculated from the filters currently in place and the energy this device is set to work with. The value is not necessarily the value given to the object via the setAbsorption method.
      Returns:
      a double between 0 and 1
      Throws:
      DeviceException
    • setAbsorption

      void setAbsorption(double absorption) throws DeviceException
      Tells the filter array to move so that, for the current energy used in its calculations, the absorption is as close as possible to the value supplied
      Parameters:
      absorption - - a double between 0 and 1
      Throws:
      DeviceException
    • getTransmission

      double getTransmission() throws DeviceException
      Returns the current transmission level. This value is calculated from the filters currently in place and the energy this device is set to work with. The value is not necessarily the value given to the object via the setTransmission method.
      Returns:
      the current transmission level
      Throws:
      DeviceException
    • setTransmission

      void setTransmission(double transmission) throws DeviceException
      Tells the filter array to move so that, for the current energy used in its calculations, the transmission is as close as possible to the value supplied.
      Parameters:
      transmission - the transmission value
      Throws:
      DeviceException
    • getCalculationEnergy

      double getCalculationEnergy() throws DeviceException
      Returns the energy value currently being used to calculate the absorption and transmission.
      Returns:
      the energy value
      Throws:
      DeviceException
    • setCalculationEnergy

      void setCalculationEnergy(double energy) throws DeviceException
      Sets the energy value which would be used to calculate the absorption and transmission if isUsingMonoEnergy return false.
      Parameters:
      energy - the energy value which would be used to calculate the absorption and transmission
      Throws:
      DeviceException
    • getCalculationWavelength

      double getCalculationWavelength() throws DeviceException
      Returns the wavelength value currently being used to calculate the absorption and transmission.
      Returns:
      the wavelength
      Throws:
      DeviceException
    • setCalculationWavelength

      void setCalculationWavelength(double wavelength) throws DeviceException
      Sets the wavelength value which would be used to calculate the absorption and transmission if isUsingMonoEnergy return false.
      Parameters:
      wavelength - the wavelength value which would be used to calculate the absorption and transmission
      Throws:
      DeviceException
    • isUsingMonoEnergy

      boolean isUsingMonoEnergy() throws DeviceException
      Returns true if a monochromator's setting is being used in the calculations rather than the energy supplied via the setCalculationEnergy method.
      Returns:
      true if a monochromator's setting is being used in the calculations
      Throws:
      DeviceException
    • setUseMonoEnergy

      void setUseMonoEnergy(boolean useEnergy) throws DeviceException
      Tells the filter array to perform calculations using the current setting of a monochromator rather than a value supplied via its setCalculationEnergy method.

      If the monochromator changes energy and this method is set to true, then the filter array is NOT expected to automatically adjust until another call of either setTransmission or setAbsorption.

      Parameters:
      useEnergy - perform calculations using the current setting of a monochromator
      Throws:
      DeviceException