Package ucar.unidata.data

The data package.

See:
          Description

Interface Summary
DataChangeListener Interface for classes listening for data change events.
DataContext This interface defines the context in which the collection of data classes (e.g., DataChoice, DirectDataChoice, DerivedDataDescriptor, DataSource etc.) exist.
DataSource Interface for a source of Data
DataSourceFactory An interface for DataSource factory methods
 

Class Summary
AddeUtil A class for holding some Adde related constants and static methods
CacheDataSource Used to cache a data choice and its data
CacheDataSource.DataChoiceHolder Class DataChoiceHolder holds a data chocie and a unique id and a name
CompositeDataChoice A class for compositing data choices.
DataAlias This class manages a set of data aliases - a mapping between canonical names and a list of aliases for the canonical name.
DataCacheManager Deprecated. Just use ucar.unidata.util.CacheManager
DataCategory This represents a hierarchical category of string names and is used to categorize different flavors of data within DataChoice objects and for determining what displays are applicable to what data.
DataChoice An abstract base class that represents some selection of data.
DataDataChoice A data choice that simply holds a reference to a visad.Data object
DataGroup A generic base class that represents a source of data.
DataInstance A superclass for data instances.
DataManager A class for managing DataSources
DataOperand This class holds a name/value pair that represents an operand for the DerivedDataChoice
DataReferenceListener A class for listening to changes in DataReferences
DataSelection A class that represents some selection of data.
DataSelectionComponent Holds geo-location information - lat/lon bounding box, image size, etc.
DataSourceDescriptor A class to hold the descriptive metadata about a DataSource
DataSourceImpl An abstract class that implements the DataSource interface.
DataSourceResults Holds the results from the createDataSource call.
DataTimeRange Class DataTimeRange specifies a time range
DataUtil A class to hold general utility functions for manipulating data
DerivedDataChoice A subclass of DataChoice for derived quantities.
DerivedDataDescriptor This class is used to hold the descriptions of possible DerivedDataChoice-s that are specified in the derived.xml resource file.
DerivedNeed This class holds the specification of the "" tag in the derived.xml file.
DescriptorDataSource This simply holds a list of DerivedDataDescriptors It is used, for example, to represent a collection of end-user defined formulas (i.e., DerivedDataDescriptor)
DirectDataChoice A subclass of DataChoice for supporting a leaf choice.
FilesDataSource A data source for balloon and aircraft tracks
GeoLocationInfo Holds geo-location information - lat/lon bounding box, image size, etc.
GeoSelection Holds geo-location information - lat/lon bounding box, image size, etc.
GeoSelectionPanel Holds geo-location information - lat/lon bounding box, image size, etc.
GeoSelectionPanel.MyNavigatedMapPanel Class MyNavigatedMapPanel shows the subset panel
IdvAuthenticator This class is used to provide authentication of access controlled CDM datasets.
ListDataChoice A subclass of DataChoice for derived quantities.
ListDataSource This simply holds a list of DataChoices It is used, for example, to represent a collection of end-user defined formulas (i.e., DerivedDataChoice)
NamedArray  
SerializedDataSource This data source knows how to read in a zip file that contains an index xml file and a set of serialized visad.Data objects
UnboundDataChoice Represents a DataChoice in a formula that is unbound.
UrlDataChoice A DataChoice for a URL
UserDataChoice Represents a DataChoice in a formula that is numeric.
UserOperandValue This class holds a name/value pair that represents an operand for the DerivedDataChoice
VarInfo Class Variable Holds info about track variables
VisadDataSource This is an implementation that will read in a generic data file and return a single Data choice that is a VisAD Data object.
 

Exception Summary
BadDataException WrapperException thrown for bad data
DataCancelException Exception thrown when loading of data is canceled.
 

Package ucar.unidata.data Description

The data package.

DataCategory

A DataCategory object is really a hierarchy of objects, each identified with a String component. There are two flavors. The first is a "display" category. These are used to create the DataChoice DataTree and menus in the IDV. The second use of the DataCategory is to match up a DataChoice with the DisplayControls that are applicable to it.

There are some utility methods that allow you to create a DataCategory from a "-" separated String definition. For example:
DataCategory category = DataCategory.parseCategory ("2D grid", true);
Will give a DataCategory with the single component "2D grid". The true says to make the DataCategory be a display category.

Alternatively:
DataCategory.parseCategory ("GRID-2D-TIME;", false);
will create a non-display DataCategory that can be used by DisplayControl-s that need gridded, 2 dimensional data with time.

Another utility method takes a String of ";" delimited DataCategory specifications and returns a List:
List 2dcategories = DataCategory.parseCategories ("2D grid;GRID-2D-TIME;");
Or
List 3dcategories = DataCategory.parseCategories ("3D grid;GRID-3D-TIME;");
Here by default the first category parsed (e.g., "2D grid" and "3D grid") will be the display categories.

So the DataChoice objects, which represent data available from a DataSource, hold a list of categories that define the flavor of data. The DisplayControl-s, (well really the ControlDescriptor-s) hold a list of categories which define the flavors of data they are applicable to. The categories that a DisplayControl has can contain regular expression patterns.

To see what display controls are applicable to what categories look at the file:
/ucar/unidata/idv/resources.controls.xml

There you will see entries like:

    categories="*-2D-*;*-3D-*"
This says that the given DisplayControl is applicable to anything that has 2D or 3D in any of its category components.

The TextDisplayControl has categories:

   categories="text;html" 
which says it is applicable to any category of "text" or "html"

The image sequence control has a single category:

   categories="IMAGE-2D-TIME" 
Which says it will only match data that has the exact category 2d, images with time.