Class ALcdDAFIFTModelDecoder

java.lang.Object
com.luciad.format.dafift.decoder.ALcdDAFIFTModelDecoder
All Implemented Interfaces:
ILcdInputStreamFactoryCapable, ILcdModelDecoder
Direct Known Subclasses:
TLcdDAFIFTAerodromeDecoder, TLcdDAFIFTAerodromeNavaidDecoder, TLcdDAFIFTAirspaceDecoder, TLcdDAFIFTATSRouteDecoder, TLcdDAFIFTHelipadDecoder, TLcdDAFIFTHeliportDecoder, TLcdDAFIFTHoldingDecoder, TLcdDAFIFTILSDecoder, TLcdDAFIFTMilitaryTrainingRouteDecoder, TLcdDAFIFTMinimumSectorAltitudeDecoder, TLcdDAFIFTNavaidDecoder, TLcdDAFIFTOrtcaDecoder, TLcdDAFIFTParachuteJumpAreaDecoder, TLcdDAFIFTPrecisionApproachPathDecoder, TLcdDAFIFTProcedureDecoder, TLcdDAFIFTRefuelingTrackDecoder, TLcdDAFIFTRunwayDecoder, TLcdDAFIFTSpecialUseAirspaceDecoder, TLcdDAFIFTVFRRouteDecoder, TLcdDAFIFTWayPointDecoder

public abstract class ALcdDAFIFTModelDecoder extends Object implements ILcdModelDecoder
This abstract implementation of the ILcdModelDecoder interface defines the most primitive methods used when decoding a DAFIFT file.

It adds methods to set the decoding bounds, the model filter, the record filter,...

All DAFIFT decoders will use the functionality given by this class.

Since:
7.2
  • Constructor Details

    • ALcdDAFIFTModelDecoder

      public ALcdDAFIFTModelDecoder()
  • Method Details

    • getDisplayName

      public String getDisplayName()
      Description copied from interface: ILcdModelDecoder
      Returns a short, displayable name for the format that is decoded by this ILcdModelDecoder.
      Specified by:
      getDisplayName in interface ILcdModelDecoder
      Returns:
      the displayable name of this ILcdModelDecoder.
    • getDecodingBounds

      public ILcdBounds getDecodingBounds()
      Returns the bounds to filter on.
      Returns:
      the bounds to filter on.
      See Also:
    • setDecodingBounds

      public void setDecodingBounds(ILcdBounds aBoundsToFilterOn)
      Specifies a bounds that will be used to filter on.

      If this bounds is null, all objects found in the input file will be inserted into the model.

      If this bounds is not null, only the objects whose bounds interact with the specified bounds will be inserted into the model.

      Parameters:
      aBoundsToFilterOn - The bounds to be used as a filter.
      See Also:
    • getModelFilter

      public ILcdDAFIFModelFilter getModelFilter()
      Returns the model filter that is currently used.
      Returns:
      the model filter that is currently used.
      See Also:
    • setModelFilter

      public void setModelFilter(ILcdDAFIFModelFilter aFilter)
      Specifies a filter to be used while creating the model. Only model objects that pass through this filter will be added to the resulting model.
      Parameters:
      aFilter - The model filter that should be passed before a model object is added to the resulting model.
      See Also:
    • canDecodeSource

      public boolean canDecodeSource(String aSource)
      Returns true if the specified source is:
      • A file with the specific name corresponding to the object type of this decoder
      • A directory containing such a file
      • A .toc file in a directory, pointing to such a file
      Parameters:
      aSource - the name of the source file or directory that you want to decode
      Returns:
      a boolean indicating whether the given source can be decoded
    • getDomainFactory

      @Deprecated public ALcdAISObjectFactory getDomainFactory()
      Deprecated.
      Returns the factory that is used to create domain objects.
      Returns:
      the factory that is used to create domain objects.
      See Also:
    • setDomainFactory

      @Deprecated public void setDomainFactory(ALcdAISObjectFactory aDomainFactory)
      Specifies the domain factory.

      The domain factory will be used to create the domain objects decoded by this DAFIFT decoder.

      Parameters:
      aDomainFactory - The factory that will be used to create domain objects.
      See Also:
    • getDataObjectFactory

      public TLcdAISDataObjectFactory getDataObjectFactory()
      Returns the factory that is used to create domain objects.
      Returns:
      the factory that is used to create domain objects.
      See Also:
    • setDataObjectFactory

      public void setDataObjectFactory(TLcdAISDataObjectFactory aFactory)
      Specifies the data factory.

      The data factory will be used to create the domain objects decoded by this DAFIFT decoder.

      Decoders equipped with a data object factory that is not null, will NOT use their associated domain factory (see getDomainFactory()).

      Parameters:
      aFactory - The factory that will be used to create domain objects.
      See Also:
    • getInputStreamFactory

      public ILcdInputStreamFactory getInputStreamFactory()
      Returns the input stream factory that is currently used for creating the input streams for the given source names.
      Specified by:
      getInputStreamFactory in interface ILcdInputStreamFactoryCapable
      Returns:
      the input stream factory that is currently used.
      See Also:
    • setInputStreamFactory

      public void setInputStreamFactory(ILcdInputStreamFactory aInputStreamFactory)
      Sets the input stream factory that will be used for creating the input streams for the given source names.
      Specified by:
      setInputStreamFactory in interface ILcdInputStreamFactoryCapable
      Parameters:
      aInputStreamFactory - The input stream factory to be used.
      See Also:
    • getRecordFilter

      public ILcdDAFIFTRecordFilter getRecordFilter()
      Returns the record filter that is currently used.
      Returns:
      the record filter that is currently used.
      See Also:
    • setRecordFilter

      public void setRecordFilter(ILcdDAFIFTRecordFilter aRecordFilter)
      Specifies a filter to be used while creating the model. Only records that pass through this filter will be decoded into model objects.
      Parameters:
      aRecordFilter - The record filter that should be passed before a record can be decoded.
      See Also:
    • getMaxNumberOfErrorReports

      public int getMaxNumberOfErrorReports()
      Returns the number of error reports to be added to the error message. If there are more errors than the maxNumberOfErrorReports property, they won't be stored and you won't be able to see these errors in the error message after the decoding process.
      Returns:
      the number of error reports to be added to the error message.
      See Also:
    • setMaxNumberOfErrorReports

      public void setMaxNumberOfErrorReports(int aMaxNumberOfErrorReports)
      Specifies a value for the maximum number of error reports. If a negative value is set, all reported errors will be added to the error message.
      Parameters:
      aMaxNumberOfErrorReports - The maximum number of error reports to be added to the error message.
      See Also:
    • getErrorMessage

      public String getErrorMessage()
      Returns the error message of the last decode call.

      Note that the error message can only be retrieved once after a decode call.

      Returns:
      a String object containing the errors occurred during the last decode process.