Interface XspressDetector

All Superinterfaces:
Configurable, Detector, Device, Findable, gda.observable.IObservable, Scannable
All Known Subinterfaces:
XspressFluorescenceDetector
All Known Implementing Classes:
Xspress2Detector, XspressSystem

public interface XspressDetector extends Detector
Xspress systems must implement this to enable CORBA use
  • Field Details

    • READOUT_SCALERONLY

      static final String READOUT_SCALERONLY
      readoutMode option - when this used Xspress will not use ROIs but return hardware scalers only
      See Also:
    • READOUT_MCA

      static final String READOUT_MCA
      readoutMode option - when this used Xspress will not use ROIs but return hardware scalers and full MCA
      See Also:
    • READOUT_ROIS

      static final String READOUT_ROIS
      readoutMode option - when this used Xspress will not return data from ROIs and not use hardware scalers
      See Also:
  • Method Details

    • start

      void start() throws DeviceException
      Enable the xspress system for data collection
      Throws:
      DeviceException
    • clear

      void clear() throws DeviceException
      Clear the xspress system memory
      Throws:
      DeviceException
    • getNumberOfDetectors

      int getNumberOfDetectors() throws DeviceException
      Get number of detectors
      Returns:
      the number of detectors
      Throws:
      DeviceException
    • getMCData

      @Deprecated(since="GDA 8.52") int[][][] getMCData(int time) throws DeviceException
      Deprecated.
      Get multi-channel data for all elements
      Parameters:
      time - the time to count for (mS)
      Returns:
      an array of readings from channels
      Throws:
      DeviceException
    • getRawScalerData

      int[] getRawScalerData() throws DeviceException
      Gets the raw hardware scaler values from the first frame of memory. This does not trigger any data collection. This for monitoring the Xspress status.

      Will return an int array of size 4 * number of detectors (elements).

      Returns:
      int[] 4 values for each element in order: total number of events, TFG reset counts, in window events,TFG clock counts
      Throws:
      DeviceException
    • setDetectorWindow

      void setDetectorWindow(int which, int start, int end) throws DeviceException
      Set the channel range window for a particular detector
      Parameters:
      which - the detector number
      start - the start channel number
      end - the end channel number
      Throws:
      DeviceException
    • getDetector

      DetectorElement getDetector(int which) throws DeviceException
      Get the detector information
      Parameters:
      which - the detector number to get information from
      Returns:
      detector information as a Detector object
      Throws:
      DeviceException
    • saveDetectors

      void saveDetectors(String filename) throws DeviceException
      Save detector information to a file
      Parameters:
      filename - the file to save detector information to
      Throws:
      DeviceException
    • loadAndInitializeDetectors

      void loadAndInitializeDetectors(String string) throws Exception
      Create and initialize detectors specified in a file.
      Parameters:
      string - the file to read detector information from
      Throws:
      DeviceException
      Exception
    • readoutScalerData

      Object readoutScalerData() throws DeviceException
      Read out corrected scaler data
      Returns:
      the data as an object
      Throws:
      DeviceException
    • getChannelLabels

      List<String> getChannelLabels()
      get the current channel label list;
      Returns:
      the channel labels
    • getNumberofGrades

      int getNumberofGrades()
      Returns:
      the number of resolution bins
    • getResGrade

      String getResGrade() throws DeviceException
      Returns:
      the res grade
      Throws:
      DeviceException
    • setResGrade

      void setResGrade(String grade) throws DeviceException
      Parameters:
      grade -
      Throws:
      DeviceException
    • getReadoutMode

      String getReadoutMode() throws DeviceException
      Returns:
      the readoutMode
      Throws:
      DeviceException
    • setReadoutMode

      void setReadoutMode(String readoutMode) throws DeviceException
      Sets the type of data which will be collected from the detector and returned by the readout and readoutCorrectData methods.
      Parameters:
      readoutMode -
      Throws:
      DeviceException
    • setDeadtimeCalculationEnergy

      void setDeadtimeCalculationEnergy(Double energy) throws DeviceException
      The energy to use when calculating the energy-dependent deadtime correction factors. This value is used internally and affects the values returned by the readout and readoutScalerData methods. This will not affect the results of the getRawScalerData method.

      It is recommended that the energy used in EXAFS experiments, for example, is the edge energy. It should be near the peak counts in the spectrum being studied.

      If the value null or 0.0 is entered then the deadtime calculation used will not be energy dependent.

      Parameters:
      energy -
      Throws:
      DeviceException
    • getDeadtimeCalculationEnergy

      Double getDeadtimeCalculationEnergy() throws DeviceException
      Returns:
      Double - the energy used in energy-dependent deadtime calculations.
      Throws:
      DeviceException