Interface MSTMeter

    • Method Detail

      • getDescription

        static java.lang.String getDescription()
      • getSubInstrumentTypes

        default java.util.List<java.lang.Class<? extends Instrument>> getSubInstrumentTypes()
        Description copied from interface: MultiInstrument
        Returns a list of all the different classes of sub-instruments that this instrument contains.
        Specified by:
        getSubInstrumentTypes in interface MultiInstrument
        Returns:
        List of sub-instrument classes
      • get

        default <I extends Instrument> java.util.List<I> get​(java.lang.Class<I> type)
        Description copied from interface: MultiInstrument
        Returns a list of all sub-instruments this instrument contains that can be considered to be of the given instrument type.
        Specified by:
        get in interface MultiInstrument
        Type Parameters:
        I - Instrument class
        Parameters:
        type - The class object of sub-instrument to return
        Returns:
        List of sub-instruments matching the given class
      • getName

        java.lang.String getName​(int channel)
      • getTemperature

        double getTemperature​(int sensor)
                       throws java.io.IOException,
                              DeviceException
        Returns the temperature being reported by the specified sensor.
        Parameters:
        sensor - Sensor to read
        Returns:
        Temperature, in Kelvin
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getNumSensors

        int getNumSensors()
        Returns the number of sensors the instrument has.
        Returns:
        Number of sensors
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getTemperature

        default double getTemperature()
                               throws java.io.IOException,
                                      DeviceException
        Returns the temperature reported by the first sensor.
        Specified by:
        getTemperature in interface TMeter
        Returns:
        Temperature, in Kelvin
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getTemperatures

        default java.util.List<java.lang.Double> getTemperatures()
                                                          throws java.io.IOException,
                                                                 DeviceException
        Returns temperature readings from all sensors as a List indexed by sensor number.
        Returns:
        List of temperatures, in Kelvin
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • setTemperatureRange

        void setTemperatureRange​(int sensor,
                                 double range)
                          throws java.io.IOException,
                                 DeviceException
        Sets the measurement range for temperature values. The smallest available range containing the specified value will be selected if only discrete options are available.
        Parameters:
        sensor - The sensor this applies to
        range - The range to use, in Kelvin
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • setTemperatureRange

        default void setTemperatureRange​(double range)
                                  throws java.io.IOException,
                                         DeviceException
        Description copied from interface: TMeter
        Sets the measurement range for temperature values. The smallest available range containing the specified value will be selected if only discrete options are available.
        Specified by:
        setTemperatureRange in interface TMeter
        Parameters:
        range - The range to use, in Kelvin
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • getTemperatureRange

        double getTemperatureRange​(int sensor)
                            throws java.io.IOException,
                                   DeviceException
        Returns the measurement range being used for temperature values.
        Parameters:
        sensor - The sensor this applies to
        Returns:
        The range being used, in Kelvin
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getTemperatureRange

        default double getTemperatureRange()
                                    throws java.io.IOException,
                                           DeviceException
        Description copied from interface: TMeter
        Returns the measurement range being used for temperature values.
        Specified by:
        getTemperatureRange in interface TMeter
        Returns:
        The range being used, in Kelvin
        Throws:
        java.io.IOException - Upon communications error
        DeviceException - Upon incompatibility with device
      • getSensor

        default TMeter getSensor​(int sensor)
        Returns the specified sensor as its own thermometer object.
        Parameters:
        sensor - The sensor to return
        Returns:
        Sensor as thermometer
        Throws:
        DeviceException - Upon incompatibility with device
        java.io.IOException - Upon communications error
      • getSensors

        default java.util.List<TMeter> getSensors()
      • waitForStableTemperature

        default void waitForStableTemperature​(int sensor,
                                              double temperature,
                                              double pctMargin,
                                              int duration)
                                       throws java.lang.InterruptedException,
                                              DeviceException,
                                              java.io.IOException
        Throws:
        java.lang.InterruptedException
        DeviceException
        java.io.IOException