Class TLcyAsynchronousFormatWrapper
- Direct Known Subclasses:
TLcyGXYLspAsynchronousFormatWrapper
Decorator for an ALcyFormat that makes the given format support asynchronous
painting (see com.luciad.view.gxy.asynchronous package).
Note that just wrapping a format with this asynchronous decorator isn't enough.
Also the asynchronous add-on
needs to be loaded, and a valid paint hint provider must be returned by the wrapped ALcyFormat.
If the wrapped ALcyFormat extends from ALcyGeneralFormat, the valid paint hint provider
can be created by specifying it in the configuration file using the following properties:
# This property must be set to true in order to create the paint hint provider.
# This is the only necessary option in the configuration file.
# All other settings are optional.
shortPrefix.asynchronous = true
# A boolean value indicating that only the layer bodies should be painted asynchronously,
# i.e. not the labels and selections
# Setting this setting to true saves memory, but causes labels to be dropped while asynchronous painting
# and label placement is ongoing.
# We recommend false as value for all formats which can have labels
#
# This is an optional property.
shortPrefix.asynchronous.bodiesOnly = true
# A string indicating a common buffer in which all layers belonging to that mergeGroup are painted in.
# This buffer can be shared across formats.
# Painting layers in the same buffer saves memory, but makes all layers paint as slow as the slowest layer.
# Not specifying this property leaves the buffer management to the layer order manager's strategy
#
# The recommended setting is to only specify this property for layers which you know in advance will be slow-painting.
# Typical examples are layers which request data over the network like WMS, WFS, WCS, BingMaps, ...
#
#This is an optional property.
shortPrefix.asynchronous.mergeGroup =
# If not zero, determines the minimum priority of the rendering thread.
# The value range is specified by the Thread class.
# If zero, a default priority is chosen
#
# This is an optional property.
shortPrefix.asynchronous.minimumThreadPriority = 0
The wrappers used by this class can be found in the com.luciad.lucy.map.asynchronous
package.
Some of these wrappers make certain assumptions which are documented in the class
documentation of these wrappers.
-
Constructor Summary
ConstructorsConstructorDescriptionTLcyAsynchronousFormatWrapper(ALcyFormat aFormat) Creates a wrapper for the specifiedALcyFormat, making all created layers paint asynchronously.TLcyAsynchronousFormatWrapper(ALcyFormat aFormat, ILcdFilter aLayerFilter) Creates a wrapper for the specifiedALcyFormat, making the filtered layers paint asynchronously. -
Method Summary
Modifier and TypeMethodDescriptionCreates aILcyAsynchronousPaintHintProviderfor this format.Creates theILcyCustomizerPanelFactoryfactories that can createILcyCustomizerPanelinstances for the domain objects created by the model decoders of this format.protected ALcyWorkspaceObjectCodec[]Creates theALcyWorkspaceObjectCodeccodecs for theILcyCustomizerPanelinstances for the domain objects created by the model decoders of this format.Creates theILcyCustomizerPanelFactoryfactories that can createILcyCustomizerPanelinstances for the layers created by the layer factories of this format.protected ALcyWorkspaceObjectCodec[]Creates theALcyWorkspaceObjectCodeccodecs for theILcyCustomizerPanelinstances for the layers created by the layer factories of this format.Creates theILcdGXYLayerDecoderdecoders that can decode layers for models created by the model decoders of this format.Creates theILcdGXYLayerEncoderencoders for the layers created by the layer factories of this format.Creates aILcdGXYLayerFactoryfor this format.protected ALcyLayerSelectionTransferHandler[]Creates theALcyLayerSelectionTransferHandlertransfer handlers that can transfer the selection of the 2D layers created by the layer factories of this format.protected ILcyLayerStyleProviderCreates the style provider that can retrieve and encode the style of the layers created by the layer factory of this format.Creates anILcyGXYLayerTypeProviderfor this format.Creates theALcyWorkspaceObjectCodeccodecs that can encode and decode the layers created by the layer factories of this format.protected ILcyGXYLabelPlacementHintProviderCreates theILcyLabelPlacementHintProviderthat can create aTLcyGXYLabelPlacementHintfor layers of this format.protected ILcdLayerHeightProviderFactoryCreates theILcdLayerHeightProviderFactorythat can create anILcdHeightProviderfor this format.Creates theILcyCustomizerPanelFactory(s) that can createILcyCustomizerPanelinstances to customize the models produced by the model decoders and model factories of this format.protected ALcyWorkspaceObjectCodec[]Creates theALcyWorkspaceObjectCodecthat can encode and decode theILcyCustomizerPanelinstances for the models produced by this format.Creates theILcyCustomizerPanelFactoryinstances for theILcdModelEncoderinstances created by this class.protected ALcyWorkspaceObjectCodec[]Creates theALcyWorkspaceObjectCodeccodecs for theILcyCustomizerPanelthat customize the model encoder instances created by this class.protected ALcyWorkspaceObjectCodec[]Creates theALcyWorkspaceObjectCodeccodecs that can encode and decode theILcyCustomizerPanelinstances used to customize the meta data of the models produced by this format.booleanisGXYLayerOfFormat(ILcdGXYLayer aGXYLayer) Returnstrueif and only if the given layer is a layer of the current data format.Methods inherited from class com.luciad.lucy.format.ALcyFormatWrapper
createAll, createBalloonContentProviders, createDataPropertyValueCustomizerPanelFactories, createDataSourceHandlerFileTypeDescriptorGroups, createDataSourceHandlerFileTypeDescriptors, createDataSourceHandlers, createDefaultModelDescriptorFactories, createDomainObjectWorkspaceCodecs, createFormatBarFactory, createGXYLayerDecoderFileTypeDescriptors, createGXYLayerEncoderFileTypeDescriptors, createLayerMeasureProviderFactory, createModelContentTypeProvider, createModelDecoderFileTypeDescriptorGroups, createModelDecoderFileTypeDescriptors, createModelDecoders, createModelEncoderFileTypeDescriptors, createModelEncoders, createModelFactory, createModelHeightProviderFactory, createModelMeasureProviderFactory, createModelMetaDataCustomizerPanelFactories, createModelWorkspaceCodecs, getFormat, getLongPrefix, getLucyEnv, getShortPrefix, isModelOfFormatMethods inherited from class com.luciad.lucy.format.ALcyFormat
createGXYLayerOfFormatFilter, createLayerContextOfFormatFilter, createModelContextOfFormatFilter, createModelOfFormatFilter, getAsynchronousPaintHintProvider, getBalloonContentProviders, getDataPropertyValueCustomizerPanelFactories, getDataSourceHandlerFileTypeDescriptorGroups, getDataSourceHandlerFileTypeDescriptors, getDataSourceHandlers, getDefaultModelDescriptorFactories, getDomainObjectCustomizerPanelFactories, getDomainObjectCustomizerPanelWorkspaceCodecs, getDomainObjectWorkspaceCodecs, getFormatBarFactory, getGXYLayerCustomizerPanelFactories, getGXYLayerCustomizerPanelWorkspaceCodecs, getGXYLayerDecoderFileTypeDescriptors, getGXYLayerDecoders, getGXYLayerEncoderFileTypeDescriptors, getGXYLayerEncoders, getGXYLayerFactory, getGXYLayerSelectionTransferHandlers, getGXYLayerStyleProvider, getGXYLayerTypeProvider, getGXYLayerWorkspaceCodecs, getLabelPlacementHintProvider, getLayerHeightProviderFactory, getLayerMeasureProviderFactory, getModelContentTypeProvider, getModelCustomizerPanelFactories, getModelCustomizerPanelWorkspaceCodecs, getModelDecoderFileTypeDescriptorGroups, getModelDecoderFileTypeDescriptors, getModelDecoders, getModelEncoderCustomizerPanelFactories, getModelEncoderCustomizerPanelWorkspaceCodecs, getModelEncoderFileTypeDescriptors, getModelEncoders, getModelFactory, getModelHeightProviderFactory, getModelMeasureProviderFactory, getModelMetaDataCustomizerPanelFactories, getModelMetaDataCustomizerPanelWorkspaceCodecs, getModelWorkspaceCodecs, toString
-
Constructor Details
-
TLcyAsynchronousFormatWrapper
Creates a wrapper for the specified
ALcyFormat, making all created layers paint asynchronously.- Parameters:
aFormat- TheALcyFormatfor which to provide asynchronous painting.
-
TLcyAsynchronousFormatWrapper
Creates a wrapper for the specified
ALcyFormat, making the filtered layers paint asynchronously.- Parameters:
aFormat- theALcyFormatfor which to provide asynchronous painting.aLayerFilter- the filter to use to determine if a created layer should be painted asynchronously. If null, all created layers are painted asynchronously.
-
-
Method Details
-
isGXYLayerOfFormat
Description copied from class:ALcyFormatReturns
trueif and only if the given layer is a layer of the current data format.- Overrides:
isGXYLayerOfFormatin classALcyFormatWrapper- Parameters:
aGXYLayer- The layer to check.- Returns:
trueif and only if the given layer is a layer of the current data format.
-
createGXYLayerFactory
Description copied from class:ALcyFormatCreates a
The factory can also configure label algorithms on the created layers.ILcdGXYLayerFactoryfor this format.- Overrides:
createGXYLayerFactoryin classALcyFormatWrapper- Returns:
- the
ILcdGXYLayerFactoryfor this data format. May benull. - See Also:
-
createGXYLayerDecoders
Description copied from class:ALcyFormatCreates the
ILcdGXYLayerDecoderdecoders that can decode layers for models created by the model decoders of this format.The default implementation returns a zero-length array.
It is the responsibility of this method to make sure that the lucy environment listens to status events from the decoder. This method should not register the decoder to the lucy env.
Note that
TLcdStatusInputStreamFactorymight be useful to implement this method.- Overrides:
createGXYLayerDecodersin classALcyFormatWrapper- Returns:
- An array of layer decoders. It must not be
null, but may have length0. It must not containnull. - See Also:
-
createGXYLayerEncoders
Description copied from class:ALcyFormatCreates the
ILcdGXYLayerEncoderencoders for the layers created by the layer factories of this format.The default implementation returns a zero-length array.
It is the responsibility of this method to make sure that the lucy environment listens to status events from the encoder. This method should not register the encoder to the lucy env.
Note that
TLcdStatusOutputStreamFactorymight be useful to implement this method.- Overrides:
createGXYLayerEncodersin classALcyFormatWrapper- Returns:
- An array of
ILcdGXYLayerEncoderinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createModelCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormatCreates the
ALcyWorkspaceObjectCodecthat can encode and decode theILcyCustomizerPanelinstances for the models produced by this format.- Overrides:
createModelCustomizerPanelWorkspaceCodecsin classALcyFormatWrapper- Returns:
- An array of
ALcyWorkspaceObjectCodecinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createModelEncoderCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormatCreates the
ALcyWorkspaceObjectCodeccodecs for theILcyCustomizerPanelthat customize the model encoder instances created by this class.- Overrides:
createModelEncoderCustomizerPanelWorkspaceCodecsin classALcyFormatWrapper- Returns:
- An array containing the
ALcyWorkspaceObjectCodecinstances. Must not benull, but may have length0. Must not containnull. - See Also:
-
createModelMetaDataCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormatCreates the
ALcyWorkspaceObjectCodeccodecs that can encode and decode theILcyCustomizerPanelinstances used to customize the meta data of the models produced by this format.- Overrides:
createModelMetaDataCustomizerPanelWorkspaceCodecsin classALcyFormatWrapper- Returns:
- An array of
ALcyWorkspaceObjectCodecinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createGXYLayerCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormatCreates the
ALcyWorkspaceObjectCodeccodecs for theILcyCustomizerPanelinstances for the layers created by the layer factories of this format.- Overrides:
createGXYLayerCustomizerPanelWorkspaceCodecsin classALcyFormatWrapper- Returns:
- An array containing the
ALcyWorkspaceObjectCodecinstances. Must not benull, but may have length0. Must not containnull. - See Also:
-
createDomainObjectCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormatCreates the
ALcyWorkspaceObjectCodeccodecs for theILcyCustomizerPanelinstances for the domain objects created by the model decoders of this format.- Overrides:
createDomainObjectCustomizerPanelWorkspaceCodecsin classALcyFormatWrapper- Returns:
- An array containing the
ALcyWorkspaceObjectCodecinstances. Must not benull, but may have length0. Must not containnull. - See Also:
-
createGXYLayerWorkspaceCodecs
Description copied from class:ALcyFormatCreates the
ALcyWorkspaceObjectCodeccodecs that can encode and decode the layers created by the layer factories of this format.The default implementation returns a zero-length array.
- Overrides:
createGXYLayerWorkspaceCodecsin classALcyFormatWrapper- Returns:
- An array of
ALcyWorkspaceObjectCodecinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createGXYLayerTypeProvider
Description copied from class:ALcyFormatCreates an
ILcyGXYLayerTypeProviderfor this format.- Overrides:
createGXYLayerTypeProviderin classALcyFormatWrapper- Returns:
- A
ILcyGXYLayerTypeProviderfor this data format. May benull. - See Also:
-
createAsynchronousPaintHintProvider
Description copied from class:ALcyFormatCreates a
ILcyAsynchronousPaintHintProviderfor this format.- Overrides:
createAsynchronousPaintHintProviderin classALcyFormatWrapper- Returns:
- A
ILcyAsynchronousPaintHintProviderfor the layers created by the layer factories of this format. May benull. - See Also:
-
createGXYLayerCustomizerPanelFactories
Description copied from class:ALcyFormatCreates the
ILcyCustomizerPanelFactoryfactories that can createILcyCustomizerPanelinstances for the layers created by the layer factories of this format.The created
ILcyCustomizerPanels should work with instances ofTLcyLayerContextin theirsetObjectmethod.The default implementation returns a zero-length array.
Hint: When overriding this method, you should also consider overriding
ALcyFormat.createGXYLayerCustomizerPanelWorkspaceCodecs(). This is needed if yourILcyCustomizerPanels need to store any specific state in the workspace.- Overrides:
createGXYLayerCustomizerPanelFactoriesin classALcyFormatWrapper- Returns:
- An array of
ILcyCustomizerPanelFactoryinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createModelEncoderCustomizerPanelFactories
Description copied from class:ALcyFormatCreates the
ILcyCustomizerPanelFactoryinstances for theILcdModelEncoderinstances created by this class.The created
ILcyCustomizerPanels should work with instances ofTLcyModelEncoderContextin theirsetObjectmethod.Hint: When overriding this method, you should also consider overriding
ALcyFormat.createModelEncoderCustomizerPanelWorkspaceCodecs(). This is needed if yourILcyCustomizerPanels need to store any specific state in the workspace.- Overrides:
createModelEncoderCustomizerPanelFactoriesin classALcyFormatWrapper- Returns:
- An array of
ILcyCustomizerPanelFactoryinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createModelCustomizerPanelFactories
Description copied from class:ALcyFormatCreates the
ILcyCustomizerPanelFactory(s) that can createILcyCustomizerPanelinstances to customize the models produced by the model decoders and model factories of this format.The created
ILcyCustomizerPanels should work with instances ofTLcyModelContextin theirsetObjectmethod.Hint: When overriding this method, you should also consider overriding
ALcyFormat.createModelCustomizerPanelWorkspaceCodecs(). This is needed if yourILcyCustomizerPanels need to store any specific state in the workspace.- Overrides:
createModelCustomizerPanelFactoriesin classALcyFormatWrapper- Returns:
- An array containing the
ILcyCustomizerPanelFactoryinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createDomainObjectCustomizerPanelFactories
Description copied from class:ALcyFormatCreates the
ILcyCustomizerPanelFactoryfactories that can createILcyCustomizerPanelinstances for the domain objects created by the model decoders of this format.The created
ILcyCustomizerPanels should work with instances ofTLcyDomainObjectContextin theirsetObjectmethod.Hint: When overriding this method, you should also consider overriding
ALcyFormat.createDomainObjectCustomizerPanelWorkspaceCodecs(). This is needed if yourILcyCustomizerPanels need to store any specific state in the workspace.- Overrides:
createDomainObjectCustomizerPanelFactoriesin classALcyFormatWrapper- Returns:
- An array containing the
ILcyCustomizerPanelFactoryinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createGXYLayerSelectionTransferHandlers
Description copied from class:ALcyFormatCreates the
ALcyLayerSelectionTransferHandlertransfer handlers that can transfer the selection of the 2D layers created by the layer factories of this format.The default implementation returns a zero-length array.
- Overrides:
createGXYLayerSelectionTransferHandlersin classALcyFormatWrapper- Returns:
- An array of
ALcyLayerSelectionTransferHandlerinstances. Must not benullbut may have length0. Must not containnull. - See Also:
-
createGXYLayerStyleProvider
Description copied from class:ALcyFormatCreates the style provider that can retrieve and encode the style of the layers created by the layer factory of this format.- Overrides:
createGXYLayerStyleProviderin classALcyFormatWrapper- Returns:
- the style provider to retrieve and encode the style of the layers. May be
null
-
createLabelPlacementHintProvider
Description copied from class:ALcyFormatCreates theILcyLabelPlacementHintProviderthat can create aTLcyGXYLabelPlacementHintfor layers of this format.The default implementation returns
null.- Overrides:
createLabelPlacementHintProviderin classALcyFormatWrapper- Returns:
- An
ILcyLabelPlacementHintProvider. May benull. - See Also:
-
createLayerHeightProviderFactory
Description copied from class:ALcyFormatCreates the
ILcdLayerHeightProviderFactorythat can create anILcdHeightProviderfor this format.The default implementation returns
null.- Overrides:
createLayerHeightProviderFactoryin classALcyFormatWrapper- Returns:
- An
ILcdLayerHeightProviderFactory. May benull. - See Also:
-