public class Level2Data
extends java.lang.Object
Adapted with permission from the Java Iras software developed by David Priegnitz at NSSL.
Documentation on Archive Level II data format can be found at: http://www.ncdc.noaa.gov/oa/radar/leveliidoc.html
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
AR2V0001
Identifier for AR2V0001 format
|
static java.lang.String |
ARCHIVE2
Identifier for ARCHIVE2 format
|
| Constructor and Description |
|---|
Level2Data(java.io.File file,
DataContext context)
Create a new Level II data wrapper for the file
|
Level2Data(java.lang.String filename,
DataContext context)
Create a new Level II data wrapper for the file
|
| Modifier and Type | Method and Description |
|---|---|
float |
getAzimuth(int record)
This method returns the azimuth angle for the specified
record.
|
float |
getCutElevation(int i)
Get the elevation angle of a particular cut
|
int |
getCutIndex(int i)
Get the index of the particular cut
|
int |
getCutStart(int cut_num)
This method returns the record number where the specified
elevation cut begins.
|
ucar.netcdf.RandomAccessFile |
getDataInput()
Get the DataInput for this this data
|
java.lang.String |
getDataType()
Get the data type (ARCHIVE2, AR2V0001) for this file.
|
float |
getElevation(int record)
This method returns the elevation angle for the specified
record.
|
java.lang.String |
getFilename()
Get the filename that this is using for input
|
int |
getJulianDate()
Get the starting Julian date for this volume
|
int |
getNumberOfCuts()
Get the number of cuts found in this file.
|
int |
getNumberOfTrueCuts()
Get the true number of slices from the file.
|
int |
getSecsSinceMidnight()
Get the starting time in seconds since midnight.
|
java.lang.String |
getStationId()
Get the station ID for this data
|
float |
getTrueElevation(int i)
Get the true elevation for a particular cut
|
int |
getVCP()
Get the Volume Coverage Pattern number for this data.
|
static void |
main(java.lang.String[] args)
Test the class.
|
int |
numberOfRecords()
This method returns the number of records read in from a
file.
|
void |
read(int startFlag)
Method to read the file.
|
void |
read(int startFlag,
boolean onlyVCP)
Method to read the file.
|
public static final java.lang.String ARCHIVE2
public static final java.lang.String AR2V0001
public Level2Data(java.io.File file,
DataContext context)
throws java.io.IOException
file - file to readcontext - DataContext for finding temporary directoryjava.io.IOException - problem reading or writing filepublic Level2Data(java.lang.String filename,
DataContext context)
throws java.io.IOException
filename - name of the file to readcontext - DataContext for finding temporary directoryjava.io.IOException - problem reading or writing filepublic void read(int startFlag)
startFlag - starting record number (unused)public void read(int startFlag,
boolean onlyVCP)
onlyVCP, only read enough data to get the
levels.startFlag - starting record number (unused)onlyVCP - if true, only read until we get the VCP infopublic int getNumberOfTrueCuts()
public int getCutIndex(int i)
i - cut numberpublic int getNumberOfCuts()
public float getCutElevation(int i)
i - cut numberpublic float getTrueElevation(int i)
i - cut numberpublic int getCutStart(int cut_num)
cut_num - cut numberpublic float getAzimuth(int record)
record - record numberpublic float getElevation(int record)
record - record numberpublic int numberOfRecords()
public int getVCP()
Value of: 11 = 14 elev. scans/ 5 mins.
12 = 14 elev. scans/ 4.1 mins.
21 = 11 elev. scans/ 6 mins.
31 = 8 elev. scans/ 10 mins.
32 = 7 elev. scans/ 10 mins.
121 = 9 elev. scans/ 5 mins.
public int getJulianDate()
public int getSecsSinceMidnight()
public ucar.netcdf.RandomAccessFile getDataInput()
public java.lang.String getStationId()
public java.lang.String getDataType()
public java.lang.String getFilename()
public static void main(java.lang.String[] args)
throws java.io.IOException
args - file to readjava.io.IOException - problem reading file