choco.bool
Class AbstractBinBoolConstraintWithCounterOpposite
java.lang.Object
choco.AbstractEntity
choco.AbstractConstraint
choco.bool.AbstractCompositeConstraint
choco.bool.AbstractBinCompositeConstraint
choco.bool.AbstractBinBoolConstraint
choco.bool.AbstractBinBoolConstraintWithCounterOpposite
- All Implemented Interfaces:
- BoolConstraint, CompositeConstraint, Constraint, Entity, IntConstraint, IntVarEventListener, VarEventListener, Propagator, java.lang.Cloneable, java.util.EventListener
- Direct Known Subclasses:
- BinConjunction, Equiv
public abstract class AbstractBinBoolConstraintWithCounterOpposite
- extends AbstractBinBoolConstraint
An abstract class storing the counterpart of each subconstraint + an index correspondence for variables
(between subconstraints and opposite subconstraints)
Methods inherited from class choco.bool.AbstractBinCompositeConstraint |
getConstraintIdx, getIntVar, getNbSubConstraints, getNbVars, getSubConstraint, getSubConstraintIdx, getVar, getVarIdxInOpposite, isCompletelyInstantiated, setConstraintIndex, setVar |
Methods inherited from class choco.AbstractConstraint |
awake, awakeOnVar, connectVar, constAwake, delete, fail, getEvent, getPlugIn, getPriority, getProblem, isActive, isEntailed, isEquivalentTo, opposite, setActive, setEntailed, setPassive, setPlugIn, substituteVar |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface choco.Propagator |
awake, awakeOnVar, constAwake, delete, getEvent, getPlugIn, getPriority, isCompletelyInstantiated, isConsistent, isEntailed, propagate |
AbstractBinBoolConstraintWithCounterOpposite
public AbstractBinBoolConstraintWithCounterOpposite(AbstractConstraint c1,
AbstractConstraint c2)
clone
public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
- Description copied from interface:
Constraint
- returns a copy of the constraint. This copy is a new object, may be a recursive copy in case
of composite constraints. The original and the copy share the same variables & plugins
- Specified by:
clone
in interface Constraint
- Overrides:
clone
in class AbstractBinBoolConstraint
- Returns:
-
- Throws:
java.lang.CloneNotSupportedException
assignIndices
public int assignIndices(AbstractCompositeConstraint root,
int i,
boolean dynamicAddition)
- Description copied from interface:
Propagator
- performs the global numbering (wrt root) of the variables contained in the subtree this, starting from i
- Specified by:
assignIndices
in interface Propagator
- Overrides:
assignIndices
in class AbstractBinCompositeConstraint
- Parameters:
root
- the overall root constraint, for which the variables are numberedi
- the index that will assigned to the first variable in the subtree this (originally 0)dynamicAddition
- whether the addition is undone automatically on backtracking
- Returns:
- the index of the last variable in the subtree
getOppositeSubConstraint
public Constraint getOppositeSubConstraint(int subConstIdx)
setSubConstraintStatus
public void setSubConstraintStatus(Constraint subConstraint,
boolean status,
int varOffset)
- Description copied from interface:
BoolConstraint
- records that the status of a subConstraint is now true
- Specified by:
setSubConstraintStatus
in interface BoolConstraint
- Overrides:
setSubConstraintStatus
in class AbstractBinBoolConstraint
- Parameters:
subConstraint
- the subconstraintstatus
- the new value of the status to be recordedvarOffset
- the offset for the local variable indexing in the subConstraint wrt the global numbering in this