Class SpecLibSpectrumReader

  • All Implemented Interfaces:
    adams.core.AdditionalInformationHandler, adams.core.CleanUpHandler, adams.core.Destroyable, adams.core.GlobalInfoSupporter, adams.core.io.FileFormatHandler, adams.core.logging.LoggingLevelHandler, adams.core.logging.LoggingSupporter, adams.core.option.OptionHandler, adams.core.ShallowCopySupporter<adams.data.io.input.AbstractDataContainerReader>, adams.core.SizeOfHandler, adams.core.Stoppable, Serializable, Comparable

    public class SpecLibSpectrumReader
    extends AbstractSpectrumReader
    Reads spectra in USGS SpecLib ASCII format.

    http://speclab.cr.usgs.gov/spectral.lib06/

    -logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel)
        The logging level for outputting errors and debugging output.
        default: WARNING
     
    -input <adams.core.io.PlaceholderFile> (property: input)
        The file to read and turn into a container.
        default: ${CWD}
     
    -create-dummy-report <boolean> (property: createDummyReport)
        If true, then a dummy report is created if none present.
        default: false
     
    -instrument <java.lang.String> (property: instrument)
        The name of the instrument that generated the spectra (if not already present 
        in data).
        default: unknown
     
    -format <java.lang.String> (property: format)
        The data format string.
        default: NIR
     
    -min-wavenumber <float> (property: minWaveNumber)
        Wave numbers smaller than this value get ignored.
        default: 0.0
     
    -max-wavenumber <float> (property: maxWaveNumber)
        Wave numbers larger than this value get ignored.
        default: 3.4028235E38
     
    -min-amplitude <float> (property: minAmplitude)
        Amplitudes smaller than this value get ignored.
        default: 0.0
     
    -max-amplitude <float> (property: maxAmplitude)
        Amplitudes larger than this value get ignored.
        default: 3.4028235E38
     
    Author:
    fracpete (fracpete at waikato dot ac dot nz)
    See Also:
    Serialized Form
    • Field Detail

      • m_MinWaveNumber

        protected float m_MinWaveNumber
        the minimum wavenumber to allow.
      • m_MaxWaveNumber

        protected float m_MaxWaveNumber
        the maximum wavenumber to allow.
      • m_MinAmplitude

        protected float m_MinAmplitude
        the minimum amplitude to allow.
      • m_MaxAmplitude

        protected float m_MaxAmplitude
        the maximum amplitude to allow.
    • Constructor Detail

      • SpecLibSpectrumReader

        public SpecLibSpectrumReader()
    • Method Detail

      • globalInfo

        public String globalInfo()
        Returns a string describing the object.
        Specified by:
        globalInfo in interface adams.core.GlobalInfoSupporter
        Specified by:
        globalInfo in class adams.core.option.AbstractOptionHandler
        Returns:
        a description suitable for displaying in the gui
      • getFormatDescription

        public String getFormatDescription()
        Returns a string describing the format (used in the file chooser).
        Specified by:
        getFormatDescription in interface adams.core.io.FileFormatHandler
        Specified by:
        getFormatDescription in class adams.data.io.input.AbstractDataContainerReader<Spectrum>
        Returns:
        a description suitable for displaying in the file chooser
      • getFormatExtensions

        public String[] getFormatExtensions()
        Returns the extension(s) of the format.
        Specified by:
        getFormatExtensions in interface adams.core.io.FileFormatHandler
        Specified by:
        getFormatExtensions in class adams.data.io.input.AbstractDataContainerReader<Spectrum>
        Returns:
        the extension(s) (without the dot!)
      • defineOptions

        public void defineOptions()
        Adds options to the internal list of options.
        Specified by:
        defineOptions in interface adams.core.option.OptionHandler
        Overrides:
        defineOptions in class AbstractSpectrumReader
      • setMinWaveNumber

        public void setMinWaveNumber​(float value)
        Sets the smallest allowed wavenumber.
        Parameters:
        value - the minimum
      • getMinWaveNumber

        public float getMinWaveNumber()
        Returns the smallest allowed wavenumber.
        Returns:
        the minimum
      • minWaveNumberTipText

        public String minWaveNumberTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setMaxWaveNumber

        public void setMaxWaveNumber​(float value)
        Sets the largest allowed wavenumber.
        Parameters:
        value - the maximum
      • getMaxWaveNumber

        public float getMaxWaveNumber()
        Returns the largest allowed wavenumber.
        Returns:
        the maximum
      • maxWaveNumberTipText

        public String maxWaveNumberTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setMinAmplitude

        public void setMinAmplitude​(float value)
        Sets the smallest allowed amplitude.
        Parameters:
        value - the minimum
      • getMinAmplitude

        public float getMinAmplitude()
        Returns the smallest allowed amplitude.
        Returns:
        the minimum
      • minAmplitudeTipText

        public String minAmplitudeTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • setMaxAmplitude

        public void setMaxAmplitude​(float value)
        Sets the largest allowed amplitude.
        Parameters:
        value - the maximum
      • getMaxAmplitude

        public float getMaxAmplitude()
        Returns the largest allowed amplitude.
        Returns:
        the maximum
      • maxAmplitudeTipText

        public String maxAmplitudeTipText()
        Returns the tip text for this property.
        Returns:
        tip text for this property suitable for displaying in the GUI or for listing the options.
      • readData

        protected void readData()
        Performs the actual reading.
        Specified by:
        readData in class adams.data.io.input.AbstractDataContainerReader<Spectrum>
      • main

        public static void main​(String[] args)
        Runs the reader from the command-line. If the option AbstractSpectrumReader.OPTION_OUTPUTDIR is specified then the read spectra get output as .spec files in that directory.
        Parameters:
        args - the command-line options to use