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
ConstructorDescriptionTLcyAsynchronousFormatWrapper
(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 aILcyAsynchronousPaintHintProvider
for this format.Creates theILcyCustomizerPanelFactory
factories that can createILcyCustomizerPanel
instances for the domain objects created by the model decoders of this format.protected ALcyWorkspaceObjectCodec[]
Creates theALcyWorkspaceObjectCodec
codecs for theILcyCustomizerPanel
instances for the domain objects created by the model decoders of this format.Creates theILcyCustomizerPanelFactory
factories that can createILcyCustomizerPanel
instances for the layers created by the layer factories of this format.protected ALcyWorkspaceObjectCodec[]
Creates theALcyWorkspaceObjectCodec
codecs for theILcyCustomizerPanel
instances for the layers created by the layer factories of this format.Creates theILcdGXYLayerDecoder
decoders that can decode layers for models created by the model decoders of this format.Creates theILcdGXYLayerEncoder
encoders for the layers created by the layer factories of this format.Creates aILcdGXYLayerFactory
for this format.protected ALcyLayerSelectionTransferHandler[]
Creates theALcyLayerSelectionTransferHandler
transfer handlers that can transfer the selection of the 2D layers created by the layer factories of this format.protected ILcyLayerStyleProvider
Creates the style provider that can retrieve and encode the style of the layers created by the layer factory of this format.Creates anILcyGXYLayerTypeProvider
for this format.Creates theALcyWorkspaceObjectCodec
codecs that can encode and decode the layers created by the layer factories of this format.protected ILcyGXYLabelPlacementHintProvider
Creates theILcyLabelPlacementHintProvider
that can create aTLcyGXYLabelPlacementHint
for layers of this format.protected ILcdLayerHeightProviderFactory
Creates theILcdLayerHeightProviderFactory
that can create anILcdHeightProvider
for this format.Creates theILcyCustomizerPanelFactory
(s) that can createILcyCustomizerPanel
instances to customize the models produced by the model decoders and model factories of this format.protected ALcyWorkspaceObjectCodec[]
Creates theALcyWorkspaceObjectCodec
that can encode and decode theILcyCustomizerPanel
instances for the models produced by this format.Creates theILcyCustomizerPanelFactory
instances for theILcdModelEncoder
instances created by this class.protected ALcyWorkspaceObjectCodec[]
Creates theALcyWorkspaceObjectCodec
codecs for theILcyCustomizerPanel
that customize the model encoder instances created by this class.protected ALcyWorkspaceObjectCodec[]
Creates theALcyWorkspaceObjectCodec
codecs that can encode and decode theILcyCustomizerPanel
instances used to customize the meta data of the models produced by this format.boolean
isGXYLayerOfFormat
(ILcdGXYLayer aGXYLayer) Returnstrue
if 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, isModelOfFormat
Methods 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
- TheALcyFormat
for which to provide asynchronous painting.
-
TLcyAsynchronousFormatWrapper
Creates a wrapper for the specified
ALcyFormat
, making the filtered layers paint asynchronously.- Parameters:
aFormat
- theALcyFormat
for 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:ALcyFormat
Returns
true
if and only if the given layer is a layer of the current data format.- Overrides:
isGXYLayerOfFormat
in classALcyFormatWrapper
- Parameters:
aGXYLayer
- The layer to check.- Returns:
true
if and only if the given layer is a layer of the current data format.
-
createGXYLayerFactory
Description copied from class:ALcyFormat
Creates a
The factory can also configure label algorithms on the created layers.ILcdGXYLayerFactory
for this format.- Overrides:
createGXYLayerFactory
in classALcyFormatWrapper
- Returns:
- the
ILcdGXYLayerFactory
for this data format. May benull
. - See Also:
-
createGXYLayerDecoders
Description copied from class:ALcyFormat
Creates the
ILcdGXYLayerDecoder
decoders 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
TLcdStatusInputStreamFactory
might be useful to implement this method.- Overrides:
createGXYLayerDecoders
in 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:ALcyFormat
Creates the
ILcdGXYLayerEncoder
encoders 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
TLcdStatusOutputStreamFactory
might be useful to implement this method.- Overrides:
createGXYLayerEncoders
in classALcyFormatWrapper
- Returns:
- An array of
ILcdGXYLayerEncoder
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createModelCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormat
Creates the
ALcyWorkspaceObjectCodec
that can encode and decode theILcyCustomizerPanel
instances for the models produced by this format.- Overrides:
createModelCustomizerPanelWorkspaceCodecs
in classALcyFormatWrapper
- Returns:
- An array of
ALcyWorkspaceObjectCodec
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createModelEncoderCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormat
Creates the
ALcyWorkspaceObjectCodec
codecs for theILcyCustomizerPanel
that customize the model encoder instances created by this class.- Overrides:
createModelEncoderCustomizerPanelWorkspaceCodecs
in classALcyFormatWrapper
- Returns:
- An array containing the
ALcyWorkspaceObjectCodec
instances. Must not benull
, but may have length0
. Must not containnull
. - See Also:
-
createModelMetaDataCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormat
Creates the
ALcyWorkspaceObjectCodec
codecs that can encode and decode theILcyCustomizerPanel
instances used to customize the meta data of the models produced by this format.- Overrides:
createModelMetaDataCustomizerPanelWorkspaceCodecs
in classALcyFormatWrapper
- Returns:
- An array of
ALcyWorkspaceObjectCodec
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createGXYLayerCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormat
Creates the
ALcyWorkspaceObjectCodec
codecs for theILcyCustomizerPanel
instances for the layers created by the layer factories of this format.- Overrides:
createGXYLayerCustomizerPanelWorkspaceCodecs
in classALcyFormatWrapper
- Returns:
- An array containing the
ALcyWorkspaceObjectCodec
instances. Must not benull
, but may have length0
. Must not containnull
. - See Also:
-
createDomainObjectCustomizerPanelWorkspaceCodecs
Description copied from class:ALcyFormat
Creates the
ALcyWorkspaceObjectCodec
codecs for theILcyCustomizerPanel
instances for the domain objects created by the model decoders of this format.- Overrides:
createDomainObjectCustomizerPanelWorkspaceCodecs
in classALcyFormatWrapper
- Returns:
- An array containing the
ALcyWorkspaceObjectCodec
instances. Must not benull
, but may have length0
. Must not containnull
. - See Also:
-
createGXYLayerWorkspaceCodecs
Description copied from class:ALcyFormat
Creates the
ALcyWorkspaceObjectCodec
codecs that can encode and decode the layers created by the layer factories of this format.The default implementation returns a zero-length array.
- Overrides:
createGXYLayerWorkspaceCodecs
in classALcyFormatWrapper
- Returns:
- An array of
ALcyWorkspaceObjectCodec
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createGXYLayerTypeProvider
Description copied from class:ALcyFormat
Creates an
ILcyGXYLayerTypeProvider
for this format.- Overrides:
createGXYLayerTypeProvider
in classALcyFormatWrapper
- Returns:
- A
ILcyGXYLayerTypeProvider
for this data format. May benull
. - See Also:
-
createAsynchronousPaintHintProvider
Description copied from class:ALcyFormat
Creates a
ILcyAsynchronousPaintHintProvider
for this format.- Overrides:
createAsynchronousPaintHintProvider
in classALcyFormatWrapper
- Returns:
- A
ILcyAsynchronousPaintHintProvider
for the layers created by the layer factories of this format. May benull
. - See Also:
-
createGXYLayerCustomizerPanelFactories
Description copied from class:ALcyFormat
Creates the
ILcyCustomizerPanelFactory
factories that can createILcyCustomizerPanel
instances for the layers created by the layer factories of this format.The created
ILcyCustomizerPanel
s should work with instances ofTLcyLayerContext
in theirsetObject
method.The default implementation returns a zero-length array.
Hint: When overriding this method, you should also consider overriding
ALcyFormat.createGXYLayerCustomizerPanelWorkspaceCodecs()
. This is needed if yourILcyCustomizerPanel
s need to store any specific state in the workspace.- Overrides:
createGXYLayerCustomizerPanelFactories
in classALcyFormatWrapper
- Returns:
- An array of
ILcyCustomizerPanelFactory
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createModelEncoderCustomizerPanelFactories
Description copied from class:ALcyFormat
Creates the
ILcyCustomizerPanelFactory
instances for theILcdModelEncoder
instances created by this class.The created
ILcyCustomizerPanel
s should work with instances ofTLcyModelEncoderContext
in theirsetObject
method.Hint: When overriding this method, you should also consider overriding
ALcyFormat.createModelEncoderCustomizerPanelWorkspaceCodecs()
. This is needed if yourILcyCustomizerPanel
s need to store any specific state in the workspace.- Overrides:
createModelEncoderCustomizerPanelFactories
in classALcyFormatWrapper
- Returns:
- An array of
ILcyCustomizerPanelFactory
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createModelCustomizerPanelFactories
Description copied from class:ALcyFormat
Creates the
ILcyCustomizerPanelFactory
(s) that can createILcyCustomizerPanel
instances to customize the models produced by the model decoders and model factories of this format.The created
ILcyCustomizerPanel
s should work with instances ofTLcyModelContext
in theirsetObject
method.Hint: When overriding this method, you should also consider overriding
ALcyFormat.createModelCustomizerPanelWorkspaceCodecs()
. This is needed if yourILcyCustomizerPanel
s need to store any specific state in the workspace.- Overrides:
createModelCustomizerPanelFactories
in classALcyFormatWrapper
- Returns:
- An array containing the
ILcyCustomizerPanelFactory
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createDomainObjectCustomizerPanelFactories
Description copied from class:ALcyFormat
Creates the
ILcyCustomizerPanelFactory
factories that can createILcyCustomizerPanel
instances for the domain objects created by the model decoders of this format.The created
ILcyCustomizerPanel
s should work with instances ofTLcyDomainObjectContext
in theirsetObject
method.Hint: When overriding this method, you should also consider overriding
ALcyFormat.createDomainObjectCustomizerPanelWorkspaceCodecs()
. This is needed if yourILcyCustomizerPanel
s need to store any specific state in the workspace.- Overrides:
createDomainObjectCustomizerPanelFactories
in classALcyFormatWrapper
- Returns:
- An array containing the
ILcyCustomizerPanelFactory
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createGXYLayerSelectionTransferHandlers
Description copied from class:ALcyFormat
Creates the
ALcyLayerSelectionTransferHandler
transfer 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:
createGXYLayerSelectionTransferHandlers
in classALcyFormatWrapper
- Returns:
- An array of
ALcyLayerSelectionTransferHandler
instances. Must not benull
but may have length0
. Must not containnull
. - See Also:
-
createGXYLayerStyleProvider
Description copied from class:ALcyFormat
Creates the style provider that can retrieve and encode the style of the layers created by the layer factory of this format.- Overrides:
createGXYLayerStyleProvider
in classALcyFormatWrapper
- Returns:
- the style provider to retrieve and encode the style of the layers. May be
null
-
createLabelPlacementHintProvider
Description copied from class:ALcyFormat
Creates theILcyLabelPlacementHintProvider
that can create aTLcyGXYLabelPlacementHint
for layers of this format.The default implementation returns
null
.- Overrides:
createLabelPlacementHintProvider
in classALcyFormatWrapper
- Returns:
- An
ILcyLabelPlacementHintProvider
. May benull
. - See Also:
-
createLayerHeightProviderFactory
Description copied from class:ALcyFormat
Creates the
ILcdLayerHeightProviderFactory
that can create anILcdHeightProvider
for this format.The default implementation returns
null
.- Overrides:
createLayerHeightProviderFactory
in classALcyFormatWrapper
- Returns:
- An
ILcdLayerHeightProviderFactory
. May benull
. - See Also:
-