agg.parser
Interface CriticalPair

All Known Subinterfaces:
LayeredCriticalPair
All Known Implementing Classes:
CriticalRulePairAtGraph, DependencyPair, ExcludePair, LayeredDependencyPair, LayeredExcludePair, LayeredSimpleDependencyPair, LayeredSimpleExcludePair, PriorityDependencyPair, PriorityExcludePair, PrioritySimpleDependencyPair, PrioritySimpleExcludePair, SimpleDependencyPair, SimpleExcludePair

public interface CriticalPair

CriticalPair provides an algorithm to compute a critical pair. This algorithm is than used in a container.


Field Summary
static int CONFLICT
          Conflict constant used to specify exclude algorithm, too.
static int CONFLICTFREE
          Conflict free constant used to specify the conflict free algorithm.
static int DEPENDENCY
          Deprecated. replaced by TRIGGER_DEPENDENCY
static int EXCLUDE
          Exclude constant used to specify the exclude algorithm.
static int TRIGGER_DEPENDENCY
          Dependency constant used to specify dependency kind.
static int TRIGGER_SWITCH_DEPENDENCY
           
 
Method Summary
 int getNumberOfKindOfPairs()
          Returns the number of kind of pairs which will be distinguished.
 java.lang.Object isCritical(int kind, Rule r1, Rule r2)
          computes if there is a critical pair of a special kind.
 

Field Detail

EXCLUDE

static final int EXCLUDE
Exclude constant used to specify the exclude algorithm.

See Also:
Constant Field Values

CONFLICT

static final int CONFLICT
Conflict constant used to specify exclude algorithm, too.

See Also:
Constant Field Values

TRIGGER_DEPENDENCY

static final int TRIGGER_DEPENDENCY
Dependency constant used to specify dependency kind.

See Also:
Constant Field Values

TRIGGER_SWITCH_DEPENDENCY

static final int TRIGGER_SWITCH_DEPENDENCY
See Also:
Constant Field Values

DEPENDENCY

static final int DEPENDENCY
Deprecated. replaced by TRIGGER_DEPENDENCY
See Also:
Constant Field Values

CONFLICTFREE

static final int CONFLICTFREE
Conflict free constant used to specify the conflict free algorithm.

See Also:
Constant Field Values
Method Detail

getNumberOfKindOfPairs

int getNumberOfKindOfPairs()
Returns the number of kind of pairs which will be distinguished. There must be at least two kind of pairs. That means one kind has no conflicts and the second kind has conflicts.

Returns:
The number of algorithm this object can compute.

isCritical

java.lang.Object isCritical(int kind,
                            Rule r1,
                            Rule r2)
                            throws InvalidAlgorithmException
computes if there is a critical pair of a special kind. Remenber if ther isn null is returned if the pair is not critical otherwiser a object which can explain in which way this pair is critical. One possible object can be a Vector of overlaping graphs. If a kind kind is requested which cannot be computed a InvalidAlgorithmException is thrown.

Parameters:
kind - specifies the kind of critical pair
r1 - defines the first part which can be critical
r2 - the second part which can be critical
Returns:
The critical object of two rules.
Throws:
InvalidAlgorithmException - Is thrown if a desired algorithm is not provided.