ucar.nc2.ft.point.standard
Class NestedTable
java.lang.Object
ucar.nc2.ft.point.standard.NestedTable
public class NestedTable
- extends java.lang.Object
Implements "nested table" views of point feature datasets.
A NestedTable is initialized with a TableConfig.
A nested table starts with a leaf table (no children), plus all of its parents.
There is a "join" for each child and parent.
Assumes that we have Tables that can be iterated over with a StructureDataIterator.
A parent-child join assumes that for each row of the parent, a StructureDataIterator exists that
iterates over the rows of the child table for that parent.
Nested Tables must be put in canonical form, based on feature type:
- point : obsTable
- station : stnTable -> obsTable
- traj : trajTable -> obsTable
- profile : profileTable -> obsTable
- stationProfile : stnTable -> profileTable -> obsTable
- section : sectionTable -> trajTable -> obsTable
- Since:
- Mar 28, 2008
- Author:
- caron
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
getFeatureType
public FeatureType getFeatureType()
getNumberOfLevels
public int getNumberOfLevels()
hasCoords
public boolean hasCoords()
getTimeUnit
public DateUnit getTimeUnit()
getDataVariables
public java.util.List<VariableSimpleIF> getDataVariables()
getName
public java.lang.String getName()
toString
public java.lang.String toString()
- Overrides:
toString in class java.lang.Object
show
public void show(java.util.Formatter formatter)
getObsDataIterator
public StructureDataIterator getObsDataIterator(Cursor cursor,
int bufferSize)
throws java.io.IOException
- Throws:
java.io.IOException
makeStations
public java.util.List<Station> makeStations(int bufferSize)
throws java.io.IOException
- Throws:
java.io.IOException
getStationDataIterator
public StructureDataIterator getStationDataIterator(int bufferSize)
throws java.io.IOException
- Throws:
java.io.IOException
getStationObsDataIterator
public StructureDataIterator getStationObsDataIterator(Cursor cursor,
int bufferSize)
throws java.io.IOException
- Throws:
java.io.IOException
getFeatureDataIterator
public StructureDataIterator getFeatureDataIterator(int bufferSize)
throws java.io.IOException
- Throws:
java.io.IOException
getFeatureObsDataIterator
public StructureDataIterator getFeatureObsDataIterator(Cursor cursor,
int bufferSize)
throws java.io.IOException
- Throws:
java.io.IOException
getStationProfileDataIterator
public StructureDataIterator getStationProfileDataIterator(Cursor cursor,
int bufferSize)
throws java.io.IOException
- Throws:
java.io.IOException
getStationProfileObsDataIterator
public StructureDataIterator getStationProfileObsDataIterator(Cursor cursor,
int bufferSize)
throws java.io.IOException
- Throws:
java.io.IOException
getObsTime
public double getObsTime(Cursor cursor)
getNomTime
public double getNomTime(Cursor cursor)
getLatitude
public double getLatitude(Cursor cursor)
getLongitude
public double getLongitude(Cursor cursor)
getEarthLocation
public EarthLocation getEarthLocation(Cursor cursor)
getFeatureName
public java.lang.String getFeatureName(StructureData sdata)
makeStation
public Station makeStation(StructureData stationData)
makeObsStructureData
public StructureData makeObsStructureData(Cursor cursor)
addParentJoin
public void addParentJoin(Cursor cursor)
throws java.io.IOException
- Throws:
java.io.IOException