Interface CoverageProcessingNode
- All Known Implementing Classes:
BaseCoverageProcessingNode
,RasterSymbolizerHelper
,StyleVisitorCoverageProcessingNodeAdapter
,SubchainStyleVisitorCoverageProcessingAdapter
,ZeroImageNode
public interface CoverageProcessingNode
Basic interface for Coverage Processing as used by SLD 1.0. The immediate goal here is to implement RasterSymbolizer
support for SLD 1.0 but in future it could be extended/used for an elaborate coverage processing framework.
This interface can be used to chain together CoverageProcessingNode
s in order to create graphs of
operations. A single node can have multiple sources but only one output in this design.
- Author:
- Simone Giannecchini, GeoSolutions.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a sinkCoverageProcessingNode
to the list of sinks for thisCoverageProcessingNode
.boolean
addSource
(CoverageProcessingNode source) Adds a sourceCoverageProcessingNode
to the list of sources for thisCoverageProcessingNode
.void
dispose
(boolean force) Disposes all the resources used by thisCoverageProcessingNode
.TheGridCoverageFactory
we will internally use for build intermediate and outputGridCoverage2D
.Retrieves the description for thisCoverageProcessingNode
getHints()
Getter forHints
.getName()
Retrieves the name for thisCoverageProcessingNode
int
Returns the number of sinks for thisCoverageProcessingNode
.int
Returns the number of sources for thisCoverageProcessingNode
.Forces this node to create the output coverage for the operation represented by this node.getSink
(int index) getSinks()
Retrieves theList
of sinks for thisCoverageProcessingNode
.getSource
(int index) Retrieves theList
of source for thisCoverageProcessingNode
.removeSink
(int index) Removes a sinkCoverageProcessingNode
from the list of sinks for thisCoverageProcessingNode
.boolean
Removes a sinkCoverageProcessingNode
from the list of sinks for thisCoverageProcessingNode
.removeSource
(int index) Removes a sourceCoverageProcessingNode
to the list of sources for thisCoverageProcessingNode
.boolean
removeSource
(CoverageProcessingNode source) Removes a sourceCoverageProcessingNode
to the list of sources for thisCoverageProcessingNode
.toString()
Provides a descriptive description for thisCoverageProcessingNode
.
-
Method Details
-
getOutput
Forces this node to create the output coverage for the operation represented by this node.- Returns:
- the
Coverage
which represents the output for thisCoverageProcessingNode
. - Throws:
CoverageProcessingException
-
getSources
List<CoverageProcessingNode> getSources()Retrieves theList
of source for thisCoverageProcessingNode
. Each source MUST be aCoverageProcessingNode
.- Returns:
- a
List
ofCoverageProcessingNode
which represents the sources for thisCoverageProcessingNode
.
-
getSource
- Parameters:
index
- is the zero-based index for the sink we want to get.- Returns:
- the
CoverageProcessingNode
which represents the sink at indexindex
for thisCoverageProcessingNode
. - Throws:
IndexOutOfBoundsException
-
addSource
Adds a sourceCoverageProcessingNode
to the list of sources for thisCoverageProcessingNode
.- Parameters:
source
- theCoverageProcessingNode
to add to theList
of sources for thisCoverageProcessingNode
.- Returns:
true
if everything goes fine,false
otherwise.
-
removeSource
Removes a sourceCoverageProcessingNode
to the list of sources for thisCoverageProcessingNode
.- Parameters:
index
- the index at which we want to remove a source from theList
of sources for thisCoverageProcessingNode
.- Returns:
- the
CoverageProcessingNode
we actually remove from the sources list. - Throws:
IndexOutOfBoundsException
-
removeSource
Removes a sourceCoverageProcessingNode
to the list of sources for thisCoverageProcessingNode
.- Parameters:
source
- theCoverageProcessingNode
to remove from theList
of sources for thisCoverageProcessingNode
.- Returns:
true
in case we remove something,false
otherwise.
-
getSinks
List<CoverageProcessingNode> getSinks()Retrieves theList
of sinks for thisCoverageProcessingNode
. Each sink MUST be aCoverageProcessingNode
.- Returns:
- a
List
ofCoverageProcessingNode
which represents the sinks for thisCoverageProcessingNode
.
-
getSink
- Parameters:
index
- is the zero-based index for the source we want to access.- Returns:
- the
CoverageProcessingNode
which represents the source at indexindex
for thisCoverageProcessingNode
. - Throws:
IndexOutOfBoundsException
-
addSink
Adds a sinkCoverageProcessingNode
to the list of sinks for thisCoverageProcessingNode
.- Parameters:
sink
- theCoverageProcessingNode
to add to theList
of sinks for thisCoverageProcessingNode
.
-
removeSink
Removes a sinkCoverageProcessingNode
from the list of sinks for thisCoverageProcessingNode
.- Parameters:
index
- the index at which we want to remove a sink from theList
of sinks for thisCoverageProcessingNode
.- Returns:
- the
CoverageProcessingNode
we actually remove from the sinks list. - Throws:
IndexOutOfBoundsException
-
removeSink
Removes a sinkCoverageProcessingNode
from the list of sinks for thisCoverageProcessingNode
.- Parameters:
sink
- theCoverageProcessingNode
to remove from theList
of sinks for thisCoverageProcessingNode
.- Returns:
true
in case we remove something,false
otherwise.
-
getNumberOfSinks
int getNumberOfSinks()Returns the number of sinks for thisCoverageProcessingNode
.- Returns:
- the number of sinks for this
CoverageProcessingNode
.
-
getNumberOfSources
int getNumberOfSources()Returns the number of sources for thisCoverageProcessingNode
.- Returns:
- the number of sources for this
CoverageProcessingNode
.
-
dispose
void dispose(boolean force) Disposes all the resources used by thisCoverageProcessingNode
.- Parameters:
force
-true
to force disposal,false
to suggest disposal.
-
getHints
Hints getHints()Getter forHints
.- Returns:
Hints
provided at construction time to controlGridCoverageFactory
creation.
-
getCoverageFactory
GridCoverageFactory getCoverageFactory()TheGridCoverageFactory
we will internally use for build intermediate and outputGridCoverage2D
.- Returns:
- a
GridCoverageFactory
we will internally use for build intermediate and outputGridCoverage2D
.
-
getName
InternationalString getName()Retrieves the name for thisCoverageProcessingNode
- Returns:
- the name for this
CoverageProcessingNode
-
getDescription
InternationalString getDescription()Retrieves the description for thisCoverageProcessingNode
- Returns:
- the description for this
CoverageProcessingNode
-
toString
String toString()Provides a descriptive description for thisCoverageProcessingNode
.- Overrides:
toString
in classObject
- Returns:
- a descriptive description for this
CoverageProcessingNode
-