/** * {@link NetCDFOutputManager} constructor. * @param granuleStack the granule stack to be written * @param file an output file * @param encodingParameters customized encoding params * @throws IOException */ public NetCDFOutputManager(GranuleStack granuleStack, File file, Map<String, String> encodingParameters, String outputFormat) throws IOException { this.granuleStack = granuleStack; this.writer = getWriter(file, outputFormat); parseParams(encodingParameters); collectCoverageDimensions(); initializeNetCDF(); }
/** * Basic NetCDF Initialization */ private void initializeNetCDF() { // Initialize the coordinates writer crsWriter = new NetCDFCRSWriter(writer, sampleGranule); // Initialize the Dimensions and coordinates variable initializeDimensions(); // Initialize the variable by setting proper coordinates and attributes initializeVariable(); initializeGlobalAttributes(); }
try { tempFile = File.createTempFile("tempNetCDF", ".nc"); manager = new NetCDFOutputManager(granuleStack, tempFile, encodingParameters, outputFormat); manager.write(); streamBack(tempFile, output); manager.close();
updateDimensionValues(coverage); if (!(dataPacking == DataPacking.NONE)) { collectStats(coverage, statisticsPeriods);
DataType varDataType = getDataType(dataType); if (variableName != null && !variableName.isEmpty()) { coverageName = variableName; if (checkCompliant(var)) { writer.addVariableAttribute(var, new Attribute(NetCDFUtilities.STANDARD_NAME, variableName));
shuffle = settings.isShuffle(); dataPacking = settings.getDataPacking(); compressionLevel = checkLevel(settings.getCompressionLevel()); variableName = settings.getLayerName(); variableUoM = settings.getLayerUOM();