public interface ILcdARINCHandler
ILcdARINCHandler
expects Arinc data
record per record. It will decode only the records it
can handle and create an ILcdModel
with the
decoded objects.
In order to use a handler to create a model, a user should
newModel
method,handleRecord
method, getModel
method to obtain the model.Optionally, the user can specify
Modifier and Type | Method and Description |
---|---|
ILcdBounds |
getBoundsToFilterOn()
Returns the (geodetic) bounds that will be used as a filter on the model
created by this handler.
|
TLcdAISDataObjectFactory |
getDataObjectFactory()
Returns the factory to be used to
create domain objects.
|
ALcdAISObjectFactory |
getDomainFactory()
Deprecated.
|
ILcdBounds |
getInitialBounds()
Returns the bounds to be used as initial bounds for the model created by this handler.
|
ILcdFeatureIndexedAnd2DBoundsIndexedModel |
getModel()
Returns the model build by this handler.
|
void |
handleRecord(char[] aRecord)
Deals with one record of ARINC data.
|
boolean |
isStoreOriginalReference()
If true, the decoder will store the original geodetic datum of each domain
object in a feature.
|
void |
newModel(String aSource,
ILcdARINCErrorMessageSupport aErrorMessage)
Resets the internal state of this handler so that
it is ready to handle a new data source from scratch.
|
void |
setARINCModelFilter(ILcdARINCModelFilter aFilter)
Specifies a filter to be used while creating the model.
|
void |
setBoundsToFilterOn(ILcdBounds aBoundsToFilterOn)
Specifies (geodetic) bounds that will be used as a filter on the model
created by this handler.
|
void |
setDataObjectFactory(TLcdAISDataObjectFactory aFactory)
Specifies the factory to be used to
create domain objects.
|
void |
setDomainFactory(ALcdAISObjectFactory aDomainFactory)
Deprecated.
|
void |
setInitialBounds(ILcdBounds aInitialBounds)
Specifies a bounds to be used as initial bounds for the model created by this handler.
|
void |
setStoreOriginalReference(boolean aStoreRef)
If true, the decoder will store the original geodetic datum of each domain
object in a feature.
|
void newModel(String aSource, ILcdARINCErrorMessageSupport aErrorMessage)
The user should call this method before using this handler in a decoding process.
aSource
- the name of the source that will be handledaErrorMessage
- for each irregular situation during the decoding, a report should be
added to this objectvoid handleRecord(char[] aRecord)
Each implementation of the ILcdARINCHandler
interface decides by itself whether to use the information
found in the given record to
create or modify a domain object, or to do nothing at all.
Typically, this method will be called when looping through the records of a data source.
The domain objects created or modified when calling this method
will be stored in a model. The user can obtain this model by
calling the getModel
method.
aRecord
- the record to deal with
created with data from the given record ingetModel()
ILcdFeatureIndexedAnd2DBoundsIndexedModel getModel()
Please remark that this handler is only capable of creating the expected model if the user calls
newModel
method to reset the internal
state before he or she starts the decoding process,handleRecord
method each time a new
record in the data source is accessed.@Deprecated void setDomainFactory(ALcdAISObjectFactory aDomainFactory)
setDataObjectFactory(TLcdAISDataObjectFactory)
The given domainFactory must not be null.
aDomainFactory
- the domainFactory to be used to
create domain objectsgetDomainFactory()
@Deprecated ALcdAISObjectFactory getDomainFactory()
setDataObjectFactory(TLcdAISDataObjectFactory)
setDomainFactory(com.luciad.ais.model.ALcdAISObjectFactory)
void setDataObjectFactory(TLcdAISDataObjectFactory aFactory)
The given factory must not be null.
aFactory
- the domainFactory to be used to
create domain objectsgetDataObjectFactory()
TLcdAISDataObjectFactory getDataObjectFactory()
setDataObjectFactory(TLcdAISDataObjectFactory)
void setInitialBounds(ILcdBounds aInitialBounds)
This bounds should be large enough to enclose (most of) the model objects. This option is used to avoid to many expansions of the model bounds.
This parameter may be null.
Note: This bounds is not a filter! If a model objects bounds does not interact with aInitialBounds, aInitialBounds will be enlarged to enclose the object.
aInitialBounds
- the initial bounds for the model created by this handlerILcdBounds getInitialBounds()
setInitialBounds(com.luciad.shape.ILcdBounds)
void setBoundsToFilterOn(ILcdBounds aBoundsToFilterOn)
If this bounds is null, all objects found in the data source 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.
aBoundsToFilterOn
- the bounds to be used as a filterILcdBounds getBoundsToFilterOn()
setBoundsToFilterOn(com.luciad.shape.ILcdBounds)
void setStoreOriginalReference(boolean aStoreRef)
aStoreRef
- specifies if the decoder must store the original geodetic datum
of each domain object in a feature.boolean isStoreOriginalReference()
void setARINCModelFilter(ILcdARINCModelFilter aFilter)
aFilter
- an ILcdARINCModelFilter
to filter the model objects