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
-
-
-
Method Detail
-
getOutput
GridCoverage getOutput() throws CoverageProcessingException
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
CoverageProcessingNode getSource(int index) throws IndexOutOfBoundsException
- 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
boolean addSource(CoverageProcessingNode source)
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
CoverageProcessingNode removeSource(int index) throws IndexOutOfBoundsException
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
boolean removeSource(CoverageProcessingNode source)
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
CoverageProcessingNode getSink(int index) throws IndexOutOfBoundsException
- 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
void addSink(CoverageProcessingNode sink)
Adds a sinkCoverageProcessingNode
to the list of sinks for thisCoverageProcessingNode
.- Parameters:
sink
- theCoverageProcessingNode
to add to theList
of sinks for thisCoverageProcessingNode
.
-
removeSink
CoverageProcessingNode removeSink(int index) throws IndexOutOfBoundsException
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
boolean removeSink(CoverageProcessingNode sink)
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
-
-