Package noaa.coastwatch.io
Class NOAA1bV1Reader.ScanLineV1
java.lang.Object
noaa.coastwatch.io.NOAA1bReader.ScanLine
noaa.coastwatch.io.NOAA1bV1Reader.ScanLineV1
- Enclosing class:
- NOAA1bV1Reader
The scan line version 1 class is a scan line that can read,
calibrate, and navigate NOAA-A through -J data.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
The channel 1 calibration intercept attribute (Float).static final int
The channel 1 calibration slope attribute (Float).static final int
The channel 2 calibration intercept attribute (Float).static final int
The channel 2 calibration slope attribute (Float).static final int
The channel 3 calibration intercept attribute (Float).static final int
The channel 3 calibration slope attribute (Float).static final int
The channel 4 calibration intercept attribute (Float).static final int
The channel 4 calibration slope attribute (Float).static final int
The channel 5 calibration intercept attribute (Float).static final int
The channel 5 calibration slope attribute (Float).static final int
The PRT reading 1 attribute (Integer).static final int
The PRT reading 2 attribute (Integer).static final int
The PRT reading 3 attribute (Integer).Fields inherited from class noaa.coastwatch.io.NOAA1bReader.ScanLine
AVHRR_CH1, AVHRR_CH2, AVHRR_CH3, AVHRR_CH3A, AVHRR_CH4, AVHRR_CH5, CH3_SELECT, CLOUD, count, data, LATITUDE, LONGITUDE, NAVIGATION_VALUES, QUALITY_INDICATOR, RELATIVE_AZIMUTH, SATELLITE_ZENITH, SCAN_LINE_DAY, SCAN_LINE_MILLISECOND, SCAN_LINE_NUMBER, SCAN_LINE_YEAR, SCAN_TIME, SOLAR_ZENITH, start
-
Constructor Summary
ConstructorDescriptionScanLineV1
(int line, int start, int count) Creates a new dataset scan line using the specified index. -
Method Summary
Modifier and TypeMethodDescriptionfloat[]
calibrateChannel
(int[] countData, int channel) Calibrates channel count data to scientific units.getAttribute
(int index) Gets a scan line attribute.protected float[]
getCalibration
(int channel) Gets the set of line-specific calibration coefficients for the specified channel.byte[]
getCloud()
Throws an exception.float[]
getRawNavigation
(int variable) Gets the raw uninterpolated navigation data for the specified angle variable.long[]
Gets the scan line time data.boolean
Gets the navigation data usability flag.boolean
Gets the sensor data usability flag.Methods inherited from class noaa.coastwatch.io.NOAA1bReader.ScanLine
getChannel, getIndex, getNavigation, getRawChannel, getRawData, interpolateNavigation
-
Field Details
-
CH1_SLOPE
public static final int CH1_SLOPEThe channel 1 calibration slope attribute (Float).- See Also:
-
CH1_INTERCEPT
public static final int CH1_INTERCEPTThe channel 1 calibration intercept attribute (Float).- See Also:
-
CH2_SLOPE
public static final int CH2_SLOPEThe channel 2 calibration slope attribute (Float).- See Also:
-
CH2_INTERCEPT
public static final int CH2_INTERCEPTThe channel 2 calibration intercept attribute (Float).- See Also:
-
CH3_SLOPE
public static final int CH3_SLOPEThe channel 3 calibration slope attribute (Float).- See Also:
-
CH3_INTERCEPT
public static final int CH3_INTERCEPTThe channel 3 calibration intercept attribute (Float).- See Also:
-
CH4_SLOPE
public static final int CH4_SLOPEThe channel 4 calibration slope attribute (Float).- See Also:
-
CH4_INTERCEPT
public static final int CH4_INTERCEPTThe channel 4 calibration intercept attribute (Float).- See Also:
-
CH5_SLOPE
public static final int CH5_SLOPEThe channel 5 calibration slope attribute (Float).- See Also:
-
CH5_INTERCEPT
public static final int CH5_INTERCEPTThe channel 5 calibration intercept attribute (Float).- See Also:
-
PRT_READING_1
public static final int PRT_READING_1The PRT reading 1 attribute (Integer).- See Also:
-
PRT_READING_2
public static final int PRT_READING_2The PRT reading 2 attribute (Integer).- See Also:
-
PRT_READING_3
public static final int PRT_READING_3The PRT reading 3 attribute (Integer).- See Also:
-
-
Constructor Details
-
ScanLineV1
Creates a new dataset scan line using the specified index.- 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.- Throws:
IOException
- if an error occurred reading the file data.- See Also:
-
-
Method Details
-
getCloud
public byte[] getCloud()Throws an exception. The NOAA 1b version 1 format does not support the storage of cloud data.- Specified by:
getCloud
in classNOAA1bReader.ScanLine
- Returns:
- an array of cloud mask data values.
-
getScanTime
public long[] getScanTime()Gets the scan line time data. This implementation simply returns the same time for all data samples across the scan line. A more sophisticated method would compute separate times for each sample.- Specified by:
getScanTime
in classNOAA1bReader.ScanLine
- Returns:
- an array of time data values in milliseconds.
-
getAttribute
Description copied from class:NOAA1bReader.ScanLine
Gets a scan line attribute.- Specified by:
getAttribute
in classNOAA1bReader.ScanLine
- Parameters:
index
- the attribute index.- Returns:
- the attribute as an object. Primitive types are wrapped in their corresponding objects.
-
isSensorDataUsable
public boolean isSensorDataUsable()Description copied from class:NOAA1bReader.ScanLine
Gets the sensor data usability flag.- Specified by:
isSensorDataUsable
in classNOAA1bReader.ScanLine
-
getCalibration
protected float[] getCalibration(int channel) Description copied from class:NOAA1bReader.ScanLine
Gets the set of line-specific calibration coefficients for the specified channel. The order of coefficients is not important, as the coefficients are simply used as a "calibration" signature for use in creating count versus calibrated value lookup tables.- Specified by:
getCalibration
in classNOAA1bReader.ScanLine
- Parameters:
channel
- the channel for calibration coefficients, [1..5].- Returns:
- an array of calibration coefficients.
-
calibrateChannel
public float[] calibrateChannel(int[] countData, int channel) Description copied from class:NOAA1bReader.ScanLine
Calibrates channel count data to scientific units. Visible channel data is calibrated to percent albedo and thermal data to degrees Kelvin.- Specified by:
calibrateChannel
in classNOAA1bReader.ScanLine
- Parameters:
countData
- the count data as an integer array.channel
- the channel to calibrate, [1..5].- Returns:
- an array of calibrated sample values.
- See Also:
-