public class GranuleAggregation extends Object implements MultiDimensionReader
| Modifier and Type | Field and Description |
|---|---|
private String |
crossTrackDimensionName |
private int |
granuleCount |
private int |
granuleLength |
private String |
inTrackDimensionName |
private static org.slf4j.Logger |
logger |
(package private) ArrayList<NetCDFFile> |
ncdfal |
(package private) ArrayList<ucar.nc2.NetcdfFile> |
nclist |
(package private) ArrayList<HashMap<String,Class>> |
varDataTypeList |
(package private) ArrayList<HashMap<String,int[]>> |
varDimLengthsList |
(package private) ArrayList<HashMap<String,String[]>> |
varDimNamesList |
(package private) ArrayList<HashMap<String,Integer>> |
varGranuleRatiosList |
(package private) ArrayList<HashMap<String,ucar.nc2.Variable>> |
varMapList |
(package private) HashMap<String,RangeProcessor> |
varToRangeProcessor |
| Constructor and Description |
|---|
GranuleAggregation(ArrayList<NetCDFFile> ncdfal,
int granuleLength,
String inTrackDimensionName,
String crossTrackDimensionName) |
| Modifier and Type | Method and Description |
|---|---|
void |
addRangeProcessor(String arrayName,
RangeProcessor rangeProcessor) |
(package private) void |
analyzeStructure(ucar.nc2.Structure var,
HashMap<String,ucar.nc2.Variable> varMap,
HashMap<String,String[]> varDimNames,
HashMap<String,int[]> varDimLengths,
HashMap<String,Class> varDataType) |
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(ucar.nc2.Variable v)
Based on the names of the variable dimensions, determine the in-track index
|
ArrayList<NetCDFFile> |
getReaders() |
short[] |
getShortArray(String array_name,
int[] start,
int[] count,
int[] stride) |
HashMap |
getVarMap() |
private void |
init(ArrayList<NetCDFFile> ncdfal) |
private Object |
processArray(String array_name,
Class arrayType,
int granIdx,
Object values,
RangeProcessor rngProcessor) |
private Object |
readArray(String array_name,
int[] start,
int[] count,
int[] stride) |
private static final org.slf4j.Logger logger
ArrayList<NetCDFFile> ncdfal
ArrayList<HashMap<String,ucar.nc2.Variable>> varMapList
ArrayList<HashMap<String,String[]>> varDimNamesList
ArrayList<HashMap<String,int[]>> varDimLengthsList
ArrayList<HashMap<String,Class>> varDataTypeList
ArrayList<HashMap<String,Integer>> varGranuleRatiosList
HashMap<String,RangeProcessor> varToRangeProcessor
private int granuleCount
private int granuleLength
private String inTrackDimensionName
private String crossTrackDimensionName
public GranuleAggregation(ArrayList<NetCDFFile> ncdfal, int granuleLength, String inTrackDimensionName, String crossTrackDimensionName) throws Exception
Exceptionpublic Class getArrayType(String array_name)
getArrayType in interface MultiDimensionReaderpublic String[] getDimensionNames(String array_name)
getDimensionNames in interface MultiDimensionReaderpublic int[] getDimensionLengths(String array_name)
getDimensionLengths in interface MultiDimensionReaderpublic float[] getFloatArray(String array_name, int[] start, int[] count, int[] stride) throws Exception
getFloatArray in interface MultiDimensionReaderExceptionpublic int[] getIntArray(String array_name, int[] start, int[] count, int[] stride) throws Exception
getIntArray in interface MultiDimensionReaderExceptionpublic double[] getDoubleArray(String array_name, int[] start, int[] count, int[] stride) throws Exception
getDoubleArray in interface MultiDimensionReaderExceptionpublic short[] getShortArray(String array_name, int[] start, int[] count, int[] stride) throws Exception
getShortArray in interface MultiDimensionReaderExceptionpublic byte[] getByteArray(String array_name, int[] start, int[] count, int[] stride) throws Exception
getByteArray in interface MultiDimensionReaderExceptionpublic Object getArray(String array_name, int[] start, int[] count, int[] stride) throws Exception
getArray in interface MultiDimensionReaderExceptionpublic HDFArray getGlobalAttribute(String attr_name) throws Exception
getGlobalAttribute in interface MultiDimensionReaderExceptionpublic HDFArray getArrayAttribute(String array_name, String attr_name) throws Exception
getArrayAttribute in interface MultiDimensionReaderExceptionpublic void close() throws Exception
close in interface MultiDimensionReaderExceptionprivate void init(ArrayList<NetCDFFile> ncdfal) throws Exception
Exceptionprivate int getInTrackIndex(ucar.nc2.Variable v)
dimNames - names of dimensions - should match static strings in relevant classesvoid analyzeStructure(ucar.nc2.Structure var, HashMap<String,ucar.nc2.Variable> varMap, HashMap<String,String[]> varDimNames, HashMap<String,int[]> varDimLengths, HashMap<String,Class> varDataType) throws Exception
Exceptionprivate Object readArray(String array_name, int[] start, int[] count, int[] stride) throws Exception
Exceptionpublic ArrayList<NetCDFFile> getReaders()
private Object processArray(String array_name, Class arrayType, int granIdx, Object values, RangeProcessor rngProcessor)
public void addRangeProcessor(String arrayName, RangeProcessor rangeProcessor)