dpvis.dpProcessor
Interface DPProcessor

All Superinterfaces:
java.io.Serializable
All Known Subinterfaces:
ContextSensitiveDpProcessor
All Known Implementing Classes:
AbstractCSProcessor, AbstractProcessor

public interface DPProcessor
extends java.io.Serializable

Interface for Dependency Pair Processors.

Author:
felixs

Method Summary
 void freeResources()
          Use this method to free any resources (close Streams, kill subprocesses, etc.)
 java.util.List<OutputElement> getOutput()
          Provides the (human readable) output of the processor as list of OutputElements, see class OutputElement for Details
 java.util.Map<java.lang.String,java.util.List<java.lang.String>> getParameterDescription()
          Specifies which parameters can be set for this processor.
 boolean isComplete()
          Specifies whether a dependency processor is complete, i.e.
 java.util.Set<DependencyPairProblem> process(DependencyPairProblem prob)
          Method to process a dependency pair problem.
 void setParameters(java.util.Map<java.lang.String,java.lang.String> params)
          Sets the processors specific parameters for this processors
 

Method Detail

process

java.util.Set<DependencyPairProblem> process(DependencyPairProblem prob)
Method to process a dependency pair problem.

Parameters:
prob - The input problem.
Returns:
The set of resulting Dependency Pair problems.

getOutput

java.util.List<OutputElement> getOutput()
Provides the (human readable) output of the processor as list of OutputElements, see class OutputElement for Details

Returns:
The list of OutputElements.

freeResources

void freeResources()
Use this method to free any resources (close Streams, kill subprocesses, etc.) your DP Processor uses. This method will be called when your processor is interrupted due to a time limit.


isComplete

boolean isComplete()
Specifies whether a dependency processor is complete, i.e. whether finiteness of the input DP problem implies finiteness of all derived problems.

Returns:
true if the processor is complete

getParameterDescription

java.util.Map<java.lang.String,java.util.List<java.lang.String>> getParameterDescription()
Specifies which parameters can be set for this processor. The map stores the name of a parameter mapped to a list (of at least length two) of possible values, or a unit list meaning the value can take an arbitrary string value where the default value is the single element of the list. The default value of each parameter is identified by a "!" at the end of the string. It is assumed that there is exactly one default value for each parameter.

Returns:
A map describing possible parameters for this processor

setParameters

void setParameters(java.util.Map<java.lang.String,java.lang.String> params)
Sets the processors specific parameters for this processors

Parameters:
params - The parameters.