Package edu.wisc.ssec.mcidasv.data.hydra
Class RangeProcessor
java.lang.Object
edu.wisc.ssec.mcidasv.data.hydra.RangeProcessor
- Direct Known Subclasses:
AggregationRangeProcessor
,CloudSat_2B_GEOPROF_RangeProcessor
,CrIS_RangeProcessor
,IASI_RangeProcessor
,RadianceToBTbyLUT
,ReflSolzenCorr
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) boolean
private static final org.slf4j.Logger
(package private) double[]
(package private) int
(package private) String
(package private) float[]
(package private) boolean
(package private) MultiDimensionReader
(package private) float[]
(package private) int
(package private) int
(package private) boolean
(package private) boolean
(package private) double
(package private) double
(package private) double[]
-
Constructor Summary
ConstructorsConstructorDescriptionRangeProcessor
(float scale, float offset, float valid_low, float valid_high, float missing) RangeProcessor
(MultiDimensionReader reader, Map<String, Object> metadata) RangeProcessor
(MultiDimensionReader reader, Map<String, Object> metadata, String multiScaleDimName) -
Method Summary
Modifier and TypeMethodDescription(package private) static RangeProcessor
createRangeProcessor
(MultiDimensionReader reader, Map<String, Object> metadata) double[]
getAttributeAsDoubleArray
(String arrayName, String attrName) float[]
getAttributeAsFloatArray
(String arrayName, String attrName) int
boolean
float[]
processRange
(byte[] values, Map<String, double[]> subset) Process a range of data from an array ofbyte
values.double[]
processRange
(double[] values, Map<String, double[]> subset) Process a range of data from an array ofdouble
value.float[]
processRange
(float[] values, Map<String, double[]> subset) Process a range of data from an array offloat
values.float[]
processRange
(short[] values, Map<String, double[]> subset) Process a range of data from an array ofshort
values.processRangeApplyLUT
(short[] values, float[] lut) Should be generalized.float[]
processRangeQualityFlag
(byte[] values, Map<String, double[]> subset, QualityFlag qf) Process a range of data from an array ofbyte
values where bytes are packed bit or multi-bit fields of quality flags.float[]
processRangeUshorts
(int[] values, Map<String, double[]> subset) processRangeUshortsApplyLUT
(int[] values, float[] lut) void
setHasMultiDimensionScale
(boolean yesno) void
setMultiScaleDimName
(String multiScaleDimName) void
setMultiScaleIndex
(int idx)
-
Field Details
-
logger
-
reader
-
metadata
-
scale
float[] scale -
offset
float[] offset -
missing
double[] missing -
valid_range
double[] valid_range -
valid_low
double valid_low -
valid_high
double valid_high -
unpack
boolean unpack -
unsigned
boolean unsigned -
rangeCheckBeforeScaling
boolean rangeCheckBeforeScaling -
scaleOffsetLen
int scaleOffsetLen -
multiScaleDimName
-
hasMultiDimensionScale
boolean hasMultiDimensionScale -
multiScaleDimensionIndex
-
soIndex
int soIndex
-
-
Constructor Details
-
RangeProcessor
public RangeProcessor() -
RangeProcessor
-
RangeProcessor
public RangeProcessor(MultiDimensionReader reader, Map<String, Object> metadata, String multiScaleDimName) throws Exception- Throws:
Exception
-
RangeProcessor
- Throws:
Exception
-
-
Method Details
-
createRangeProcessor
static RangeProcessor createRangeProcessor(MultiDimensionReader reader, Map<String, Object> metadata) throws Exception- Throws:
Exception
-
getAttributeAsFloatArray
- Throws:
Exception
-
getAttributeAsDoubleArray
- Throws:
Exception
-
processRangeQualityFlag
Process a range of data from an array ofbyte
values where bytes are packed bit or multi-bit fields of quality flags. Based on info in aQualityFlag
object passed in, we extract and return values for that flag.- Parameters:
values
- Input byte values. Cannot benull
.subset
- Optional subset.qf
- Quality flag.- Returns:
- Processed range.
-
processRange
Process a range of data from an array ofbyte
values.- Parameters:
values
- Inputbyte
values. Cannot benull
.subset
- Optional subset.- Returns:
- Processed range.
-
processRange
Process a range of data from an array ofshort
values.- Parameters:
values
- Inputshort
values. Cannot benull
.subset
- Optional subset.- Returns:
- Processed range.
-
processRangeUshorts
-
processRange
Process a range of data from an array offloat
values.- Parameters:
values
- Inputfloat
values. Cannot benull
.subset
- Optional subset.- Returns:
- Processed array.
-
processRange
Process a range of data from an array ofdouble
value.- Parameters:
values
- Inputdouble
values. Cannot benull
.subset
- Optional subset.- Returns:
- Processed array.
-
setMultiScaleDimName
-
getMultiScaleDimensionIndex
-
hasMultiDimensionScale
-
setHasMultiDimensionScale
-
setMultiScaleIndex
-
processRangeApplyLUT
Should be generalized. For now works for short to float conversions- Parameters:
values
- the set of input values to maplut
- the lookup table for direct mapping input to output values- Returns:
- output array as primitive floats
-
processRangeUshortsApplyLUT
-