public class GranuleAggregation extends java.lang.Object implements MultiDimensionReader
| Modifier and Type | Field and Description |
|---|---|
private java.lang.String |
crossTrackDimensionName |
(package private) java.util.Map<java.lang.Integer,java.util.List<ucar.ma2.Range>> |
granCutRanges |
(package private) java.util.Map<java.lang.Integer,java.lang.Integer> |
granCutScans |
private int |
granuleCount |
private java.lang.String |
inTrackDimensionName |
private java.lang.String |
inTrackGeoDimensionName |
private boolean |
isVIIRS |
private static org.slf4j.Logger |
logger |
(package private) java.util.Map<java.lang.String,float[]> |
lutMap |
(package private) java.util.List<NetCDFFile> |
ncdfal |
(package private) java.util.List<ucar.nc2.NetcdfFile> |
nclist |
private java.lang.String |
origName |
private java.util.Set<java.lang.String> |
products |
(package private) java.util.Map<java.lang.String,QualityFlag> |
qfMap |
(package private) java.util.Map<java.lang.String,int[]> |
varAggrDimLengths |
(package private) java.util.List<java.util.Map<java.lang.String,java.lang.Class>> |
varDataTypeList |
(package private) java.util.List<java.util.Map<java.lang.String,java.lang.String[]>> |
varDimNamesList |
(package private) java.util.Map<java.lang.String,java.util.Map<java.lang.Integer,java.lang.Integer>> |
varGranInTrackLengths |
(package private) java.util.List<java.util.Map<java.lang.String,ucar.nc2.Variable>> |
varMapList |
(package private) java.util.Map<java.lang.String,RangeProcessor> |
varToRangeProcessor |
| Constructor and Description |
|---|
GranuleAggregation(java.util.List<NetCDFFile> ncdfal,
java.util.Set<java.lang.String> products,
java.lang.String inTrackDimensionName,
java.lang.String crossTrackDimensionName) |
GranuleAggregation(java.util.List<NetCDFFile> ncdfal,
java.util.Set<java.lang.String> products,
java.lang.String inTrackDimensionName,
java.lang.String crossTrackDimensionName,
boolean isEDR) |
GranuleAggregation(java.util.List<NetCDFFile> ncdfal,
java.util.Set<java.lang.String> products,
java.lang.String inTrackDimensionName,
java.lang.String inTrackGeoDimensionName,
java.lang.String crossTrackDimensionName) |
GranuleAggregation(java.util.List<NetCDFFile> ncdfal,
java.util.Set<java.lang.String> products,
java.lang.String inTrackDimensionName,
java.lang.String inTrackGeoDimensionName,
java.lang.String crossTrackDimensionName,
boolean isVIIRS) |
| Modifier and Type | Method and Description |
|---|---|
void |
addRangeProcessor(java.lang.String arrayName,
RangeProcessor rangeProcessor) |
void |
close() |
java.lang.Object |
getArray(java.lang.String array_name,
int[] start,
int[] count,
int[] stride) |
HDFArray |
getArrayAttribute(java.lang.String array_name,
java.lang.String attr_name) |
java.lang.Class |
getArrayType(java.lang.String array_name) |
byte[] |
getByteArray(java.lang.String array_name,
int[] start,
int[] count,
int[] stride) |
int[] |
getDimensionLengths(java.lang.String array_name) |
java.lang.String[] |
getDimensionNames(java.lang.String array_name) |
double[] |
getDoubleArray(java.lang.String array_name,
int[] start,
int[] count,
int[] stride) |
float[] |
getFloatArray(java.lang.String array_name,
int[] start,
int[] count,
int[] stride) |
HDFArray |
getGlobalAttribute(java.lang.String attr_name) |
int[] |
getIntArray(java.lang.String array_name,
int[] start,
int[] count,
int[] stride) |
private int |
getInTrackIndex(ucar.nc2.Variable v)
Based on the names of the variable dimensions, determine the in-track index.
|
java.util.List<NetCDFFile> |
getReaders() |
short[] |
getShortArray(java.lang.String array_name,
int[] start,
int[] count,
int[] stride) |
java.util.Map<java.lang.String,ucar.nc2.Variable> |
getVarMap() |
private void |
init(java.util.List<NetCDFFile> ncdfal) |
private java.lang.String |
mapNameIfLUTVar(java.lang.String array_name) |
private java.lang.String |
mapNameIfQualityFlag(java.lang.String array_name) |
private java.lang.Object |
processArray(java.lang.String mapName,
java.lang.String array_name,
java.lang.Class arrayType,
int granIdx,
java.lang.Object values,
RangeProcessor rngProcessor,
int[] start,
int[] count) |
private java.lang.Object |
readArray(java.lang.String array_name,
int[] start,
int[] count,
int[] stride) |
void |
setLUTMap(java.util.Map<java.lang.String,float[]> lutMap) |
void |
setQfMap(java.util.Map<java.lang.String,QualityFlag> qfMap) |
private static final org.slf4j.Logger logger
java.util.List<ucar.nc2.NetcdfFile> nclist
java.util.List<NetCDFFile> ncdfal
java.util.List<java.util.Map<java.lang.String,ucar.nc2.Variable>> varMapList
java.util.List<java.util.Map<java.lang.String,java.lang.String[]>> varDimNamesList
java.util.List<java.util.Map<java.lang.String,java.lang.Class>> varDataTypeList
java.util.Map<java.lang.String,java.util.Map<java.lang.Integer,java.lang.Integer>> varGranInTrackLengths
java.util.Map<java.lang.String,int[]> varAggrDimLengths
java.util.Map<java.lang.Integer,java.util.List<ucar.ma2.Range>> granCutRanges
java.util.Map<java.lang.Integer,java.lang.Integer> granCutScans
java.util.Map<java.lang.String,QualityFlag> qfMap
java.util.Map<java.lang.String,float[]> lutMap
java.util.Map<java.lang.String,RangeProcessor> varToRangeProcessor
private int granuleCount
private java.lang.String inTrackDimensionName
private java.lang.String inTrackGeoDimensionName
private java.lang.String crossTrackDimensionName
private java.util.Set<java.lang.String> products
private java.lang.String origName
private boolean isVIIRS
public GranuleAggregation(java.util.List<NetCDFFile> ncdfal, java.util.Set<java.lang.String> products, java.lang.String inTrackDimensionName, java.lang.String inTrackGeoDimensionName, java.lang.String crossTrackDimensionName, boolean isVIIRS) throws java.lang.Exception
java.lang.Exceptionpublic GranuleAggregation(java.util.List<NetCDFFile> ncdfal, java.util.Set<java.lang.String> products, java.lang.String inTrackDimensionName, java.lang.String inTrackGeoDimensionName, java.lang.String crossTrackDimensionName) throws java.lang.Exception
java.lang.Exceptionpublic GranuleAggregation(java.util.List<NetCDFFile> ncdfal, java.util.Set<java.lang.String> products, java.lang.String inTrackDimensionName, java.lang.String crossTrackDimensionName) throws java.lang.Exception
java.lang.Exceptionpublic GranuleAggregation(java.util.List<NetCDFFile> ncdfal, java.util.Set<java.lang.String> products, java.lang.String inTrackDimensionName, java.lang.String crossTrackDimensionName, boolean isEDR) throws java.lang.Exception
java.lang.Exceptionpublic java.lang.Class getArrayType(java.lang.String array_name)
getArrayType in interface MultiDimensionReaderpublic java.lang.String[] getDimensionNames(java.lang.String array_name)
getDimensionNames in interface MultiDimensionReaderpublic int[] getDimensionLengths(java.lang.String array_name)
getDimensionLengths in interface MultiDimensionReaderprivate java.lang.String mapNameIfQualityFlag(java.lang.String array_name)
private java.lang.String mapNameIfLUTVar(java.lang.String array_name)
public float[] getFloatArray(java.lang.String array_name, int[] start, int[] count, int[] stride) throws java.lang.Exception
getFloatArray in interface MultiDimensionReaderjava.lang.Exceptionpublic int[] getIntArray(java.lang.String array_name, int[] start, int[] count, int[] stride) throws java.lang.Exception
getIntArray in interface MultiDimensionReaderjava.lang.Exceptionpublic double[] getDoubleArray(java.lang.String array_name, int[] start, int[] count, int[] stride) throws java.lang.Exception
getDoubleArray in interface MultiDimensionReaderjava.lang.Exceptionpublic short[] getShortArray(java.lang.String array_name, int[] start, int[] count, int[] stride) throws java.lang.Exception
getShortArray in interface MultiDimensionReaderjava.lang.Exceptionpublic byte[] getByteArray(java.lang.String array_name, int[] start, int[] count, int[] stride) throws java.lang.Exception
getByteArray in interface MultiDimensionReaderjava.lang.Exceptionpublic java.lang.Object getArray(java.lang.String array_name, int[] start, int[] count, int[] stride) throws java.lang.Exception
getArray in interface MultiDimensionReaderjava.lang.Exceptionpublic HDFArray getGlobalAttribute(java.lang.String attr_name) throws java.lang.Exception
getGlobalAttribute in interface MultiDimensionReaderjava.lang.Exceptionpublic HDFArray getArrayAttribute(java.lang.String array_name, java.lang.String attr_name) throws java.lang.Exception
getArrayAttribute in interface MultiDimensionReaderjava.lang.Exceptionpublic void close() throws java.lang.Exception
close in interface MultiDimensionReaderjava.lang.Exceptionprivate void init(java.util.List<NetCDFFile> ncdfal) throws java.lang.Exception
java.lang.Exceptionprivate int getInTrackIndex(ucar.nc2.Variable v)
v - Variable that "contains" dimension names that
allow for inference of the in-track index. null is allowed.private java.lang.Object readArray(java.lang.String array_name, int[] start, int[] count, int[] stride) throws java.lang.Exception
java.lang.Exceptionpublic void setQfMap(java.util.Map<java.lang.String,QualityFlag> qfMap)
qfMap - the qfMap to setpublic void setLUTMap(java.util.Map<java.lang.String,float[]> lutMap)
lutMap - the lutMap to setpublic java.util.Map<java.lang.String,ucar.nc2.Variable> getVarMap()
public java.util.List<NetCDFFile> getReaders()
private java.lang.Object processArray(java.lang.String mapName, java.lang.String array_name, java.lang.Class arrayType, int granIdx, java.lang.Object values, RangeProcessor rngProcessor, int[] start, int[] count)
public void addRangeProcessor(java.lang.String arrayName, RangeProcessor rangeProcessor)