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