Class NoGoodsCollector<T extends IntVar>

java.lang.Object
org.jacop.search.NoGoodsCollector<T>
All Implemented Interfaces:
ExitChildListener<T>, ExitListener, TimeOutListener

public class NoGoodsCollector<T extends IntVar> extends Object implements ExitChildListener<T>, TimeOutListener, ExitListener
NoGoodCollector collects no-goods from search when timeout has occurred. As time-out is executed the search will exit from deeper search levels and no-goods collector will collect neccessary information to create no-goods when finally exiting the search. The no-goods will be immmediately imposed when collector is informed about exiting the search.
Version:
4.8
  • Field Details

  • Constructor Details

    • NoGoodsCollector

      public NoGoodsCollector()
  • Method Details

    • executedAtTimeOut

      public void executedAtTimeOut(int noSolutions)
      It is executed right after time out is determined.
      Specified by:
      executedAtTimeOut in interface TimeOutListener
      Parameters:
      noSolutions - number of solutions found before the timeout occurred.
    • leftChild

      public boolean leftChild(T var, int value, boolean status)
      It is executed after exiting left child. Status specifies if the solution is found or not. The return parameter specifies if the search should continue according to its course or be forced to exit the parent node of the left child.
      Specified by:
      leftChild in interface ExitChildListener<T extends IntVar>
      Parameters:
      var - variable used in the choice point.
      value - value used in the choice point.
      status - true if the solution was found in the child subtree, false otherwise.
      Returns:
      true if the search should continue undisturbed, false if it should exit the current node with false
    • leftChild

      public boolean leftChild(PrimitiveConstraint choice, boolean status)
      Description copied from interface: ExitChildListener
      It is executed after exiting the left child.
      Specified by:
      leftChild in interface ExitChildListener<T extends IntVar>
      Parameters:
      choice - primitive constraint used as the base of the choice point.
      status - true if the solution was found in the child subtree, false otherwise.
      Returns:
      true if the search should continue undisturbed to the right node, false if it should exit the current node with false
    • rightChild

      public void rightChild(T var, int value, boolean status)
      Description copied from interface: ExitChildListener
      It is executed after exiting the right child.
      Specified by:
      rightChild in interface ExitChildListener<T extends IntVar>
      Parameters:
      var - variable used in the choice point.
      value - value used in the choice point.
      status - true if the solution was found in the child subtree, false otherwise. exit the current node with false
    • rightChild

      public void rightChild(PrimitiveConstraint choice, boolean status)
      Description copied from interface: ExitChildListener
      It is executed after exiting the right child.
      Specified by:
      rightChild in interface ExitChildListener<T extends IntVar>
      Parameters:
      choice - primitive constraint used as the base of the choice point.
      status - true if the solution was found in the child subtree, false otherwise. exit the current node with false
    • executedAtExit

      public void executedAtExit(Store store, int solutionsNo)
      Description copied from interface: ExitListener
      It is executed right after time out is determined.
      Specified by:
      executedAtExit in interface ExitListener
      Parameters:
      store - store in the context of which the search took place.
      solutionsNo - the number of solutions found.
    • setChildrenListeners

      public void setChildrenListeners(ExitChildListener<T>[] children)
      Description copied from interface: ExitChildListener
      It sets the children listeners for the current listener.
      Specified by:
      setChildrenListeners in interface ExitChildListener<T extends IntVar>
      Parameters:
      children - array containing children listeners.
    • setChildrenListeners

      public void setChildrenListeners(ExitListener[] children)
      Description copied from interface: ExitListener
      It sets the children of this exit listener.
      Specified by:
      setChildrenListeners in interface ExitListener
      Parameters:
      children - an array containing the children.
    • setChildrenListeners

      public void setChildrenListeners(TimeOutListener[] children)
      Description copied from interface: TimeOutListener
      It sets children listeners for this timeout listener.
      Specified by:
      setChildrenListeners in interface TimeOutListener
      Parameters:
      children - list of children listeners.
    • setChildrenListeners

      public void setChildrenListeners(TimeOutListener child)
      Description copied from interface: TimeOutListener
      It sets child listener for this timeout listener.
      Specified by:
      setChildrenListeners in interface TimeOutListener
      Parameters:
      child - child listener for this timeout listener.
    • setChildrenListeners

      public void setChildrenListeners(ExitListener child)
      Description copied from interface: ExitListener
      It sets one child listener.
      Specified by:
      setChildrenListeners in interface ExitListener
      Parameters:
      child - the only child listener used by this listener.
    • setChildrenListeners

      public void setChildrenListeners(ExitChildListener<T> child)
      Description copied from interface: ExitChildListener
      It adds one child listener.
      Specified by:
      setChildrenListeners in interface ExitChildListener<T extends IntVar>
      Parameters:
      child - added child listener.
    • toString

      public String toString()
      Overrides:
      toString in class Object