Class ALcdASDIModelDescriptor

All Implemented Interfaces:
ILcdAnnotatedElement, ILcdDataModelDescriptor, ILcdModelDescriptor, ILcdFeaturedDescriptor, ILcdFeaturedDescriptorProvider, Serializable
Direct Known Subclasses:
TLcdASDIFlightPlanHistoryModelDescriptor, TLcdASDIFlightPlanModelDescriptor, TLcdASDITrackModelDescriptor, TLcdASDITrajectoryModelDescriptor

Base class for all ILcdModelDescriptor classes of all ILcdModel classes containing ASDI data.

This model descriptor is a ILcdDataModelDescriptor. ASDI domain model objects implement the ILcdDataObject interface to model their additional attributes. The TLcdDataType that accompanies these domain objects can be retrieved using the TLcdDataModelDescriptor.getModelElementTypes(), which will return a single type per ASDI model. This type models all properties of the ASDI model element. These properties can also be found statically in any of the following classes: TLcdASDITrackTODataTypes, TLcdASDITrackTZDataTypes ,TLcdASDIFlightPlanDataTypes. The ILcdDataObject interface is a preferred alternative to the outdated ILcdFeatured interface.

This model descriptor is also a ILcdFeaturedDescriptor for reasons of backwards compatibility. ASDI domain objects implement the ILcdFeatured to provide a way to access the same data that can be accessed through the ILcdDataObject interface. Additional meta-information about those features (such as their descriptive name or feature class) can be retrieved using the methods of the ILcdFeaturedDescriptor interface that is implemented by this model descriptor.

Often domain objects have extra methods to retrieve additional features. For instance the TLcdASDITrajectory class has methods getTrackFeatureCount() and getTrackFeature(int aIndex, int aFeatureIndex) to retrieve the track features. In these cases also extra methods exist on the model descriptors to retrieve the ILcdFeaturedDescriptor for the additional features. For instance the TLcdASDITrajectoryModelDescriptor class that is the descriptor for models containing TLcdASDITrajectory objects has a method getTrackFeaturedDescriptor() to retrieve the descriptor for the track features.

Certain feature values (for instance retrieved using ILcdFeatured.getFeature(int) ) can again return an ILcdFeatured object. That object also needs an ILcdFeaturedDescriptor to be able to specify all meta data. That ILcdFeaturedDescriptor can be retrieved from this model descriptor through its ILcdFeaturedDescriptorProvider interface. Simply invoke getFeaturedDescriptor(com.luciad.util.ILcdFeatured) for that featured object to obtain the associated ILcdFeaturedDescriptor.

Note that the ILcdFeaturedDescriptor of a list feature is also a ILcdCollectionFeaturedDescriptor.

See Also:
  • Field Details

    • DATA_TYPE_TZ_TRACK

      public static final int DATA_TYPE_TZ_TRACK
      Indicates data that originates from TZ messages. Used in getDataType() to indicate the source of the model data.
      See Also:
    • DATA_TYPE_TO_TRACK

      public static final int DATA_TYPE_TO_TRACK
      Indicates data that originates from TO messages. Used in getDataType() to indicate the source of the model data.
      See Also:
    • DATA_TYPE_FLIGHT_PLAN

      public static final int DATA_TYPE_FLIGHT_PLAN
      Indicates data that originates from FZ, AF, DZ, UZ, AZ, RZ, RT messages. Used in getDataType() to indicate the source of the model data.
      See Also:
  • Method Details

    • getDataType

      public int getDataType()
      Returns the type of the model data, indicating the type of messages the model data is originating from.

      Please note that this data type has nothing to do with the TLcdDataType class. The declared data types can be obtained using the TLcdDataModelDescriptor.getModelTypes(), and the model element types can be obtained using the TLcdDataModelDescriptor.getModelElementTypes() method.
      Returns:
      Returns the type of the model data, indicating the type of messages the model data is originating from. It can be one of DATA_TYPE_TZ_TRACK, DATA_TYPE_TO_TRACK or DATA_TYPE_FLIGHT_PLAN.
    • getFeatureCount

      public int getFeatureCount()
      Returns the number of features.

      Please refer to the class comment for additional information.

      Specified by:
      getFeatureCount in interface ILcdFeaturedDescriptor
      Returns:
      the number of features.
    • getFeatureName

      public String getFeatureName(int aIndex)
      Returns the name of the feature at the given index.

      Please refer to the class comment for additional information.

      Specified by:
      getFeatureName in interface ILcdFeaturedDescriptor
      Parameters:
      aIndex - a valid feature index.
      Returns:
      the name of the feature at the given index.
    • getFeatureIndex

      public int getFeatureIndex(String aFeatureName)
      Returns the index of the given feature name if it exists, -1 otherwise.

      Please refer to the class comment for additional information.

      Specified by:
      getFeatureIndex in interface ILcdFeaturedDescriptor
      Parameters:
      aFeatureName - a feature name.
      Returns:
      the index of the given feature name if it exists, -1 otherwise.
    • getFeatureClass

      public Class getFeatureClass(int aIndex)
      Returns the Class of the feature at the given index.

      Please refer to the class comment for additional information.

      Specified by:
      getFeatureClass in interface ILcdFeaturedDescriptor
      Parameters:
      aIndex - a valid feature index.
      Returns:
      the Class of the feature at the given index.
    • getFeaturedDescriptor

      public ILcdFeaturedDescriptor getFeaturedDescriptor(ILcdFeatured aFeatured)
      Gets a ILcdFeaturedDescriptor that describes the ILcdFeatured passed.

      Please refer to the class comment for additional information.

      Specified by:
      getFeaturedDescriptor in interface ILcdFeaturedDescriptorProvider
      Parameters:
      aFeatured - a featured object to retrieve a featured descriptor for.
      Returns:
      a ILcdFeaturedDescriptor that describes the ILcdFeatured passed.