Model decoder

The TLcdAIXM51ModelDecoder class is an implementation of ILcdModelDecoder for decoding of AIXM 5.1 data. It decodes data representing an AIXM 5.1 Abstract Message containing one or more AIXM 5.1 features, or a stand-alone AIXM 5.1 feature. Examples of an Abstract Message are a Basic Message or a Digital NOTAM.

Decoding an Abstract Message

The decode(String) method decodes a data source representing an AIXM 5.1 Abstract Message, like a Basic Message or Digital NOTAM, into an ILcdModel. Decoded models are of the type TLcdAIXM51AbstractAIXMMessage. This is an implementation of the LuciadLightspeed interfaces ILcd2DBoundsIndexedModel and ILcdIntegerIndexedModel, which makes the decoded model spatially indexed with random access capabilities.

To identify the type of Abstract Message, the XML name can be retrieved from the decoded TLcdAIXM51AbstractAIXMMessage. For example, in case of a Basic Message, the XML name is AIXMBasicMessage in the namespace http://www.aixm.aero/schema/5.1/message.

Decoded models have a model descriptor of type TLcdAIXM51ModelDescriptor, giving access to the information about the data source and to the type of features that are encountered in the data, such as navaids, airports, and so on.

Decoding a feature

If a feature is stored stand-alone, meaning that it is not contained within a Basic Message or Digital NOTAM , it can be decoded through the method decodeFeature(String). The decoded object is of type TLcdAIXM51AbstractAIXMFeature. Because it is not a collection of features, it is not a LuciadLightspeed ILcdModel and cannot be added directly to a LuciadLightspeed layer and view. However, the decoded feature can be added manually to a TLcdAIXM51AbstractAIXMMessage, to allow visualizing and editing it in a LuciadLightspeed view.

Model encoder

The TLcdAIXM51ModelEncoder class is an implementation of ILcdModelEncoder for encoding of AIXM 5.1 data. It encodes data representing a stand-alone AIXM 5.1 feature or an Abstract Message containing one or more AIXM 5.1 features.

Encoding an Abstract Message

The methods export(ILcdModel, String) and save(ILcdModel) encode a model of type TLcdAIXM51AbstractAIXMMessage to disk. This can be a message representing a Basic Message, Digital NOTAM or any other extension of Abstract Message. The method export encodes the model to a new destination, while save overwrites the source file.

Encoding a feature

An AIXM 5.1 feature can be encoded through exportFeature(TLcdAIXM51AbstractAIXMFeature, String), which stores an object of type TLcdAIXM51AbstractAIXMFeature at a given location.