Package adams.data.io.input
Class SoilCaresScannerSpectrumReader
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.data.io.input.AbstractDataContainerReader<Spectrum>
-
- adams.data.io.input.AbstractSpectrumReader
-
- adams.data.io.input.SoilCaresScannerSpectrumReader
-
- 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.DataContainerReader>,adams.core.SizeOfHandler,adams.core.Stoppable,adams.data.io.input.DataContainerReader<Spectrum>,Serializable,Comparable
public class SoilCaresScannerSpectrumReader extends AbstractSpectrumReader
Reads spectra from ZIP files generated by the SoilCares Scanner app.
-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
-keep-format <boolean> (property: keepFormat) If enabled the format obtained from the file is not replaced by the format defined here. default: false
-use-absolute-source <boolean> (property: useAbsoluteSource) If enabled the source report field stores the absolute file name rather than just the name. default: false
-spectrum-type <BACK|CORR|SC> (property: spectrumType) The type of spectrum to read from the data. default: SC
-amplitude-type <INTERFEROGRAM|SPECTRUM|ABSORBANCE> (property: amplitudeType) The type of amplitude to read from the data. default: ABSORBANCE
- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSoilCaresScannerSpectrumReader.AmplitudeTypeDetermines the type of amplitudes to load.static classSoilCaresScannerSpectrumReader.SpectrumTypeDetermines the type of spectrum to load.
-
Field Summary
Fields Modifier and Type Field Description static StringABSORBANCEthe column name for the wavelengths.static StringINTERFEROGRAMthe column name for the interferogram.protected SoilCaresScannerSpectrumReader.AmplitudeTypem_AmplitudeTypethe type of amplitude to read for a spectrum.protected SoilCaresScannerSpectrumReader.SpectrumTypem_SpectrumTypethe type of spectrum to read.static StringMETADATAthe name of the metadata file.static StringSPECTRUMthe column name for the spectrum.static StringSUFFIX_BACKthe suffix for 'back' files.static StringSUFFIX_CORRthe suffix for 'corr' files.static StringSUFFIX_DEVICEthe suffix for 'device' files.static StringSUFFIX_SCthe suffix for 'sc' files.static StringWAVELENGTHthe column name for the wavelengths.-
Fields inherited from class adams.data.io.input.AbstractSpectrumReader
m_Format, m_Instrument, m_KeepFormat, m_Stopped, m_UseAbsoluteSource, OPTION_OUTPUTDIR
-
-
Constructor Summary
Constructors Constructor Description SoilCaresScannerSpectrumReader()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description StringamplitudeTypeTipText()Returns the tip text for this property.voiddefineOptions()Adds options to the internal list of options.SoilCaresScannerSpectrumReader.AmplitudeTypegetAmplitudeType()Returns the type of amplitude to read.StringgetFormatDescription()Returns a string describing the format (used in the file chooser).String[]getFormatExtensions()Returns the extension(s) of the format.SoilCaresScannerSpectrumReader.SpectrumTypegetSpectrumType()Returns the type of spectrum to read.StringglobalInfo()Returns a string describing the object.static voidmain(String[] args)Runs the reader from the command-line.protected voidreadData()Performs the actual reading.protected SampleDatareadMetaData(ZipFile zip, ZipEntry entry)Reads the meta-data from the zip file.protected SpectrumreadSpectrum(ZipFile zip, ZipEntry entry)Reads the spectrum from the specified zip entry.voidsetAmplitudeType(SoilCaresScannerSpectrumReader.AmplitudeType value)Sets the type of amplitude to read.voidsetSpectrumType(SoilCaresScannerSpectrumReader.SpectrumType value)Sets the type of spectrum to read.StringspectrumTypeTipText()Returns the tip text for this property.-
Methods inherited from class adams.data.io.input.AbstractSpectrumReader
checkData, createDummyReport, formatTipText, getDefaultFormat, getDefaultInstrument, getDefaultKeepFormat, getDefaultUseAbsoluteSource, getFormat, getInstrument, getKeepFormat, getReaders, getUseAbsoluteSource, instrumentTipText, keepFormatTipText, postProcessData, runReader, setFormat, setInstrument, setKeepFormat, setUseAbsoluteSource, stopExecution, useAbsoluteSourceTipText
-
Methods inherited from class adams.data.io.input.AbstractDataContainerReader
cleanUp, compareTo, createDummyReportTipText, destroy, doRead, equals, getAdditionalInformation, getCreateDummyReport, getDefaultFormatExtension, getInput, initialize, inputTipText, isInputFile, read, reset, setCreateDummyReport, setInput, shallowCopy, shallowCopy
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
-
-
-
Field Detail
-
SUFFIX_BACK
public static final String SUFFIX_BACK
the suffix for 'back' files.- See Also:
- Constant Field Values
-
SUFFIX_CORR
public static final String SUFFIX_CORR
the suffix for 'corr' files.- See Also:
- Constant Field Values
-
SUFFIX_SC
public static final String SUFFIX_SC
the suffix for 'sc' files.- See Also:
- Constant Field Values
-
SUFFIX_DEVICE
public static final String SUFFIX_DEVICE
the suffix for 'device' files.- See Also:
- Constant Field Values
-
METADATA
public static final String METADATA
the name of the metadata file.- See Also:
- Constant Field Values
-
INTERFEROGRAM
public static final String INTERFEROGRAM
the column name for the interferogram.- See Also:
- Constant Field Values
-
WAVELENGTH
public static final String WAVELENGTH
the column name for the wavelengths.- See Also:
- Constant Field Values
-
SPECTRUM
public static final String SPECTRUM
the column name for the spectrum.- See Also:
- Constant Field Values
-
ABSORBANCE
public static final String ABSORBANCE
the column name for the wavelengths.- See Also:
- Constant Field Values
-
m_SpectrumType
protected SoilCaresScannerSpectrumReader.SpectrumType m_SpectrumType
the type of spectrum to read.
-
m_AmplitudeType
protected SoilCaresScannerSpectrumReader.AmplitudeType m_AmplitudeType
the type of amplitude to read for a spectrum.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfoin interfaceadams.core.GlobalInfoSupporter- Specified by:
globalInfoin classadams.core.option.AbstractOptionHandler- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptionsin interfaceadams.core.option.OptionHandler- Overrides:
defineOptionsin classAbstractSpectrumReader
-
getFormatDescription
public String getFormatDescription()
Returns a string describing the format (used in the file chooser).- Specified by:
getFormatDescriptionin interfaceadams.core.io.FileFormatHandler- Specified by:
getFormatDescriptionin classadams.data.io.input.AbstractDataContainerReader<Spectrum>- Returns:
- a description suitable fospectralDatar displaying in the file chooser
-
getFormatExtensions
public String[] getFormatExtensions()
Returns the extension(s) of the format.- Specified by:
getFormatExtensionsin interfaceadams.core.io.FileFormatHandler- Specified by:
getFormatExtensionsin classadams.data.io.input.AbstractDataContainerReader<Spectrum>- Returns:
- the extension (without the dot!)
-
setSpectrumType
public void setSpectrumType(SoilCaresScannerSpectrumReader.SpectrumType value)
Sets the type of spectrum to read.- Parameters:
value- the type
-
getSpectrumType
public SoilCaresScannerSpectrumReader.SpectrumType getSpectrumType()
Returns the type of spectrum to read.- Returns:
- the type
-
spectrumTypeTipText
public String spectrumTypeTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setAmplitudeType
public void setAmplitudeType(SoilCaresScannerSpectrumReader.AmplitudeType value)
Sets the type of amplitude to read.- Parameters:
value- the type
-
getAmplitudeType
public SoilCaresScannerSpectrumReader.AmplitudeType getAmplitudeType()
Returns the type of amplitude to read.- Returns:
- the type
-
amplitudeTypeTipText
public String amplitudeTypeTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
readMetaData
protected SampleData readMetaData(ZipFile zip, ZipEntry entry)
Reads the meta-data from the zip file.- Parameters:
zip- the zip fileentry- the entry with the meta-data- Returns:
- the meta-data
-
readSpectrum
protected Spectrum readSpectrum(ZipFile zip, ZipEntry entry)
Reads the spectrum from the specified zip entry.- Parameters:
zip- the zip fileentry- the entry to read- Returns:
- the spectrum, null if failed to read
-
readData
protected void readData()
Performs the actual reading.- Specified by:
readDatain classadams.data.io.input.AbstractDataContainerReader<Spectrum>
-
main
public static void main(String[] args)
Runs the reader from the command-line. If the optionAbstractSpectrumReader.OPTION_OUTPUTDIRis specified then the read spectra get output as .spec files in that directory.- Parameters:
args- the command-line options to use
-
-