Class NOAA1bV1Reader
A NOAA 1b version 1 reader is a NOAA 1b reader that reads NOAA 1b format NOAA-A through -J GAC/LAC/HRPT data files available from the NOAA/NESDIS Satellite Active Archive. These files are characterized by an optional 122 byte Terabit Memory (TBM) header followed by data header and records of 10688/14800/20928 bytes for 8/10/16-bit LAC or 2496/3220/4540 bytes for 8/10/16-bit GAC.
Note that currently, channel 3, 4, and 5 non-linear corrections are applied to NOAA-14 data only. Also, conversion from radiance to brightness temperatures uses a single central wavenumber for the range 270-310 K for all satellites. The calibration in this implementation may be updated at a later date as required. For more accurate calibration results, use NOAA-KLM data stored in NOAA 1b version 2 format datasets.
- Since:
- 3.1.3
- Author:
- Peter Hollemans
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionclass
The archive header version 1 class is an archive header that can read NOAA-A through -J style Terabit Memory (TBM) headers.class
The data header version 1 class is a data header that can retrieve NOAA-A through -J data header information.class
The scan line version 1 class is a scan line that can read, calibrate, and navigate NOAA-A through -J data.Nested classes/interfaces inherited from class noaa.coastwatch.io.NOAA1bReader
NOAA1bReader.ArchiveHeader, NOAA1bReader.DataHeader, NOAA1bReader.LongitudeInterpolator, NOAA1bReader.ScanLine, NOAA1bReader.ScanLineCalibration
-
Field Summary
Fields inherited from class noaa.coastwatch.io.NOAA1bReader
archive, archiveHeaderSize, attributeDataSize, dataHeaders, GAC_NAVIGATION_END, GAC_NAVIGATION_START, GAC_NAVIGATION_STEP, GAC_SAMPLES, header, inputChannel, LAC_NAVIGATION_END, LAC_NAVIGATION_START, LAC_NAVIGATION_STEP, LAC_SAMPLES, lines, LOOKUP_TABLE_SIZE, MAX_LOOKUP_TABLES, MAX_SCAN_LINES, navigationEnd, navigationStart, navigationStep, records, recordSize, samples, scanLineCache, scanLineMap, sensorWordSize, SWATH_POLY_SIZE
Fields inherited from class noaa.coastwatch.io.EarthDataReader
dataProjection, info, rawMetadataMap, variables
-
Constructor Summary
ConstructorDescriptionNOAA1bV1Reader
(String file) Constructs a NOAA 1b version 1 reader from the specified file. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
Checks the dataset format and throws an error if it is incompatible with this reader.protected boolean
Checks for an archive header and returns true if so.Gets the archive header if it exists.Gets the data format description.Gets the data header.getScanLine
(int line, int start, int count) Gets the scan line at the specified index.protected String[]
Gets the variable names in this dataset.protected boolean
isNavigationUsable
(int record, ByteBuffer buffer) Gets the navigation data usability flag.Methods inherited from class noaa.coastwatch.io.NOAA1bReader
close, getBytes, getDataBuffer, getInt, getLines, getNBit, getPreviewImpl, getRecordStart, getSamples, getShort, getUByte, getUInt, getUShort, getVariable, interpolateNavigation, interpolateRawNavigation, isArchive, isByteSwapped, isPrint
Methods inherited from class noaa.coastwatch.io.EarthDataReader
canUpdateNavigation, containsVariable, finalize, findVariable, getAllGrids, getAllVariables, getChunkProducer, getCoordinateSystems, getIndex, getInfo, getName, getPreview, getPreview, getRawMetadata, getRawMetadata, getSceneTime, getSource, getStatistics, getStatisticsVariables, getVariable, getVariables, getVariablesForSystem, putStatistics, setDataProjection, setUnitsMap, updateNavigation
-
Constructor Details
-
NOAA1bV1Reader
Constructs a NOAA 1b version 1 reader from the specified file.- Parameters:
file
- the file name to read.- Throws:
IOException
- if an error occurred reading the file data.
-
-
Method Details
-
getDataFormat
Gets the data format description.- Specified by:
getDataFormat
in classEarthDataReader
-
getVariableNames
Description copied from class:NOAA1bReader
Gets the variable names in this dataset.- Specified by:
getVariableNames
in classNOAA1bReader
-
getArchiveFlag
Checks for an archive header and returns true if so. This method reads the TBM header which contains mostly printable ASCII characters, except in a few locations.- Specified by:
getArchiveFlag
in classNOAA1bReader
- Throws:
IOException
-
checkFormat
Description copied from class:NOAA1bReader
Checks the dataset format and throws an error if it is incompatible with this reader.- Specified by:
checkFormat
in classNOAA1bReader
- Throws:
IOException
-
getArchiveHeader
Description copied from class:NOAA1bReader
Gets the archive header if it exists.- Specified by:
getArchiveHeader
in classNOAA1bReader
- Returns:
- the archive header.
- Throws:
IOException
- if an error occurred reading the file data.
-
getDataHeader
Description copied from class:NOAA1bReader
Gets the data header.- Specified by:
getDataHeader
in classNOAA1bReader
- Returns:
- the data header.
- Throws:
IOException
- if an error occurred reading the file data.
-
getScanLine
Description copied from class:NOAA1bReader
Gets the scan line at the specified index.- Specified by:
getScanLine
in classNOAA1bReader
- Parameters:
line
- the scan line index in the range [0..lines-1].start
- the starting sensor data sample.count
- the total number of sensor data samples. If the count is 0, no sensor data is read.- Returns:
- the requested scan line.
- Throws:
IOException
- if an error occurred reading the file data or the scan line is marked as missing.- See Also:
-