public abstract class GridServiceProvider extends AbstractIOServiceProvider
Modifier and Type | Class and Description |
---|---|
static class |
GridServiceProvider.IndexExtendMode |
Modifier and Type | Field and Description |
---|---|
protected static boolean |
addLatLon |
protected static boolean |
alwaysInCache |
static boolean |
debugMissing
debug flags
|
static boolean |
debugMissingDetails
debug flags
|
static boolean |
debugOpen
debug flags
|
static boolean |
debugProj
debug flags
|
static boolean |
debugTiming
debug flags
|
static boolean |
debugVert
debug flags
|
protected FmrcCoordSys |
fmrcCoordSys
set by the FMRC from the inventory definition, otherwise null
|
protected static boolean |
forceNewIndex |
protected static GridServiceProvider.IndexExtendMode |
indexFileModeOnOpen |
protected static GridServiceProvider.IndexExtendMode |
indexFileModeOnSync |
protected NetcdfFile |
ncfile
The netCDF file that the iosp is part of
|
raf
Constructor and Description |
---|
GridServiceProvider() |
Modifier and Type | Method and Description |
---|---|
protected abstract float[] |
_readData(GridRecord gr)
Read the data for this GridRecord
|
static void |
forceNewIndex(boolean b)
Set whether to force new index or not
|
String |
getDetailInfo()
Get the detail information
|
boolean |
isMissingXY(Variable v2,
int timeIdx,
int ensIdx,
int levIdx)
Is this XY level missing?
|
protected abstract void |
open(GridIndex index,
CancelTask cancelTask)
Use the given index to fill the NetcdfFile object with attributes and variables.
|
void |
open(RandomAccessFile raf,
NetcdfFile ncfile,
CancelTask cancelTask)
Open the service provider for reading.
|
Array |
readData(Variable v2,
Section section)
Read the data for the variable
|
Object |
sendIospMessage(Object special)
A way to communicate arbitrary information to an iosp.
|
static void |
setDebugFlags(DebugFlags debugFlag)
Set the debug flags
|
static void |
setExtendIndex(boolean b)
Deprecated.
use setIndexFileModeOnSync and setIndexFileModeOnOpen
|
static void |
setIndexAlwaysInCache(boolean b)
Set disk cache policy for index files.
|
static void |
setIndexFileModeOnOpen(GridServiceProvider.IndexExtendMode mode)
This controls what happens when a GRIB file is opened, and the data file has changed since the index was written.
|
static void |
setIndexFileModeOnSync(GridServiceProvider.IndexExtendMode mode)
This controls what happens when a GRIB file is synced (usually from FileCache), and the data or index file has changed
since the file was placed in the cache.
|
close, getFileTypeVersion, getLastModified, getStructureIterator, readSection, readToByteChannel, readToOutputStream, streamToByteChannel, syncExtend, toStringDebug
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getFileTypeDescription, getFileTypeId, isValidFile
protected static GridServiceProvider.IndexExtendMode indexFileModeOnOpen
protected static GridServiceProvider.IndexExtendMode indexFileModeOnSync
protected static boolean addLatLon
protected static boolean forceNewIndex
protected static boolean alwaysInCache
public static boolean debugOpen
public static boolean debugMissing
public static boolean debugMissingDetails
public static boolean debugProj
public static boolean debugTiming
public static boolean debugVert
protected FmrcCoordSys fmrcCoordSys
protected NetcdfFile ncfile
public static void forceNewIndex(boolean b)
b
- true to usepublic static void setDebugFlags(DebugFlags debugFlag)
debugFlag
- debug flagspublic static void setIndexFileModeOnOpen(GridServiceProvider.IndexExtendMode mode)
mode
- IndexExtendMode when file is openedpublic static void setIndexFileModeOnSync(GridServiceProvider.IndexExtendMode mode)
mode
- IndexExtendMode when file is openedpublic static void setExtendIndex(boolean b)
b
- if true, set modes to IndexExtendMode.extendwrite, else IndexExtendMode.readonlypublic static void setIndexAlwaysInCache(boolean b)
b
- set to this valueprotected abstract void open(GridIndex index, CancelTask cancelTask) throws IOException
index
- GridIndex to usecancelTask
- cancel taskIOException
- problem reading the filepublic void open(RandomAccessFile raf, NetcdfFile ncfile, CancelTask cancelTask) throws IOException
open
in interface IOServiceProvider
open
in class AbstractIOServiceProvider
raf
- file to read fromncfile
- netCDF file we are writing to (memory)cancelTask
- task for cancellingIOException
- problem reading filepublic String getDetailInfo()
getDetailInfo
in interface IOServiceProvider
getDetailInfo
in class AbstractIOServiceProvider
public Object sendIospMessage(Object special)
IOServiceProvider
sendIospMessage
in interface IOServiceProvider
sendIospMessage
in class AbstractIOServiceProvider
special
- opaque message sent to the IOSP object when its opened (not when isValidFile() is called)public Array readData(Variable v2, Section section) throws IOException, InvalidRangeException
v2
- Variable to readsection
- section infomationIOException
- problem reading from fileInvalidRangeException
- invalid RangeRange
public boolean isMissingXY(Variable v2, int timeIdx, int ensIdx, int levIdx) throws InvalidRangeException
v2
- VariabletimeIdx
- time indexensIdx
- ensemble indexlevIdx
- level indexInvalidRangeException
- invalid rangeprotected abstract float[] _readData(GridRecord gr) throws IOException
gr
- grid identifierIOException
- problem reading the dataCopyright © 1999–2013 UCAR/Unidata. All rights reserved.