Package ucar.nc2.iosp.gempak
Class GempakGridServiceProvider
- java.lang.Object
-
- ucar.nc2.iosp.AbstractIOServiceProvider
-
- ucar.nc2.iosp.grid.GridServiceProvider
-
- ucar.nc2.iosp.gempak.GempakGridServiceProvider
-
- All Implemented Interfaces:
Comparable<ucar.nc2.iosp.IOServiceProvider>,ucar.nc2.iosp.IOServiceProvider
public class GempakGridServiceProvider extends GridServiceProvider
An IOSP for GEMPAK Grid data
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ucar.nc2.iosp.grid.GridServiceProvider
GridServiceProvider.IndexExtendMode
-
-
Field Summary
Fields Modifier and Type Field Description static booleanextendIndexReread the file on a syncprotected GempakGridReadergemreaderGEMPAK file reader-
Fields inherited from class ucar.nc2.iosp.grid.GridServiceProvider
addLatLon, alwaysInCache, debugMissing, debugMissingDetails, debugOpen, debugProj, debugTiming, debugVert, forceNewIndex, indexFileModeOnOpen, indexFileModeOnSync
-
-
Constructor Summary
Constructors Constructor Description GempakGridServiceProvider()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected float[]_readData(GridRecord gr)Read the data for this GridRecordStringgetFileTypeDescription()StringgetFileTypeId()booleanisValidFile(ucar.unidata.io.RandomAccessFile raf)Is this a valid file?protected voidopen(GridIndex index, ucar.nc2.util.CancelTask cancelTask)Open the index and create the netCDF file from thatvoidopen(ucar.unidata.io.RandomAccessFile raf, ucar.nc2.NetcdfFile ncfile, ucar.nc2.util.CancelTask cancelTask)Open the service provider for reading.static voidsetExtendIndex(boolean b)Extend the list of gridbooleansync()Sync the file-
Methods inherited from class ucar.nc2.iosp.grid.GridServiceProvider
forceNewIndex, isMissingXY, readData, setDebugFlags, setIndexAlwaysInCache, setIndexFileModeOnOpen, setIndexFileModeOnSync
-
Methods inherited from class ucar.nc2.iosp.AbstractIOServiceProvider
build, buildFinish, close, getDetailInfo, getFileTypeVersion, getLastModified, getStructureIterator, isBuilder, reacquire, readSection, readToByteChannel, readToOutputStream, release, sendIospMessage, setNetcdfFile, streamToByteChannel, syncExtend, toStringDebug
-
-
-
-
Field Detail
-
gemreader
protected GempakGridReader gemreader
GEMPAK file reader
-
extendIndex
public static boolean extendIndex
Reread the file on a sync
-
-
Method Detail
-
isValidFile
public boolean isValidFile(ucar.unidata.io.RandomAccessFile raf) throws IOExceptionIs this a valid file?- Parameters:
raf- RandomAccessFile to check- Returns:
- true if a valid GEMPAK grid file
- Throws:
IOException- problem reading file
-
getFileTypeId
public String getFileTypeId()
-
getFileTypeDescription
public String getFileTypeDescription()
-
open
public void open(ucar.unidata.io.RandomAccessFile raf, ucar.nc2.NetcdfFile ncfile, ucar.nc2.util.CancelTask cancelTask) throws IOExceptionOpen the service provider for reading.- Specified by:
openin interfaceucar.nc2.iosp.IOServiceProvider- Overrides:
openin classGridServiceProvider- Parameters:
raf- file to read fromncfile- netCDF file we are writing to (memory)cancelTask- task for cancelling- Throws:
IOException- problem reading file
-
open
protected void open(GridIndex index, ucar.nc2.util.CancelTask cancelTask) throws IOException
Open the index and create the netCDF file from that- Specified by:
openin classGridServiceProvider- Parameters:
index- GridIndex to usecancelTask- cancel task- Throws:
IOException- problem reading the file
-
sync
public boolean sync() throws IOExceptionSync the file- Returns:
- true if needed to sync
- Throws:
IOException- problem synching the file
-
_readData
protected float[] _readData(GridRecord gr) throws IOException
Read the data for this GridRecord- Specified by:
_readDatain classGridServiceProvider- Parameters:
gr- grid identifier- Returns:
- the data (or null)
- Throws:
IOException- problem reading the data
-
setExtendIndex
public static void setExtendIndex(boolean b)
Extend the list of grid- Parameters:
b- true to reread the grid on a sync
-
-