## Uses of Interface
org.optaplanner.core.impl.score.director.ScoreDirector

- Packages that use ScoreDirector
  Package | Description
  --- | ---
  org.optaplanner.core.api.domain.variable | Domain annotations and support classes for a planning variable.
  org.optaplanner.core.impl.domain.entity.descriptor |
  org.optaplanner.core.impl.domain.solution.descriptor |
  org.optaplanner.core.impl.domain.variable.anchor |
  org.optaplanner.core.impl.domain.variable.descriptor |
  org.optaplanner.core.impl.domain.variable.inverserelation |
  org.optaplanner.core.impl.domain.variable.listener |
  org.optaplanner.core.impl.exhaustivesearch.node.bounder |
  org.optaplanner.core.impl.heuristic.move |
  org.optaplanner.core.impl.heuristic.selector.common.decorator |
  org.optaplanner.core.impl.heuristic.selector.entity.decorator |
  org.optaplanner.core.impl.heuristic.selector.move.composite |
  org.optaplanner.core.impl.heuristic.selector.move.decorator |
  org.optaplanner.core.impl.heuristic.selector.move.factory |
  org.optaplanner.core.impl.heuristic.selector.move.generic |
  org.optaplanner.core.impl.heuristic.selector.move.generic.chained |
  org.optaplanner.core.impl.heuristic.selector.value.chained |
  org.optaplanner.core.impl.heuristic.selector.value.decorator |
  org.optaplanner.core.impl.partitionedsearch.partitioner |
  org.optaplanner.core.impl.partitionedsearch.scope |
  org.optaplanner.core.impl.phase.custom |
  org.optaplanner.core.impl.score.director |
  org.optaplanner.core.impl.score.director.drools |
  org.optaplanner.core.impl.score.director.drools.testgen | Classes to help isolate incremental score calculation bugs during `EnvironmentMode.isAsserted()`.
  org.optaplanner.core.impl.score.director.easy |
  org.optaplanner.core.impl.score.director.incremental |
  org.optaplanner.core.impl.score.director.stream |
  org.optaplanner.core.impl.solver |

- - ### Uses of ScoreDirector in org.optaplanner.core.api.domain.variable

    Methods in org.optaplanner.core.api.domain.variable with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `void` | VariableListener.`afterEntityAdded(ScoreDirector scoreDirector, Entity_ entity)`
    `void` | VariableListener.`afterEntityRemoved(ScoreDirector scoreDirector, Entity_ entity)`
    `void` | VariableListener.`afterVariableChanged(ScoreDirector scoreDirector, Entity_ entity)`
    `void` | VariableListener.`beforeEntityAdded(ScoreDirector scoreDirector, Entity_ entity)`
    `void` | VariableListener.`beforeEntityRemoved(ScoreDirector scoreDirector, Entity_ entity)`
    `void` | VariableListener.`beforeVariableChanged(ScoreDirector scoreDirector, Entity_ entity)`
    `default void` | VariableListener.`resetWorkingSolution(ScoreDirector scoreDirector)` Called when the entire working solution changes.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.domain.entity.descriptor

    Methods in org.optaplanner.core.impl.domain.entity.descriptor with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `int` | EntityDescriptor.`countReinitializableVariables(ScoreDirector<Solution_> scoreDirector, Object entity)`
    `boolean` | EntityDescriptor.`isEntityInitializedOrPinned(ScoreDirector<Solution_> scoreDirector, Object entity)`
    `boolean` | EntityDescriptor.`isMovable(ScoreDirector<Solution_> scoreDirector, Object entity)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.domain.solution.descriptor

    Methods in org.optaplanner.core.impl.domain.solution.descriptor with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `int` | SolutionDescriptor.`getMovableEntityCount(ScoreDirector<Solution_> scoreDirector)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.domain.variable.anchor

    Methods in org.optaplanner.core.impl.domain.variable.anchor with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `void` | ExternalizedAnchorVariableSupply.`afterEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | AnchorVariableListener.`afterEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedAnchorVariableSupply.`afterEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | AnchorVariableListener.`afterEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedAnchorVariableSupply.`afterVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | AnchorVariableListener.`afterVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedAnchorVariableSupply.`beforeEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | AnchorVariableListener.`beforeEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedAnchorVariableSupply.`beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | AnchorVariableListener.`beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedAnchorVariableSupply.`beforeVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | AnchorVariableListener.`beforeVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedAnchorVariableSupply.`clearWorkingSolution(ScoreDirector scoreDirector)`
    `protected void` | ExternalizedAnchorVariableSupply.`insert(ScoreDirector scoreDirector, Object entity)`
    `protected void` | AnchorVariableListener.`insert(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedAnchorVariableSupply.`resetWorkingSolution(ScoreDirector scoreDirector)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.domain.variable.descriptor

    Methods in org.optaplanner.core.impl.domain.variable.descriptor with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | GenuineVariableDescriptor.`isReinitializable(ScoreDirector<Solution_> scoreDirector, Object entity)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.domain.variable.inverserelation

    Methods in org.optaplanner.core.impl.domain.variable.inverserelation with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `void` | SingletonInverseVariableListener.`afterEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedSingletonInverseVariableSupply.`afterEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedCollectionInverseVariableSupply.`afterEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | CollectionInverseVariableListener.`afterEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | SingletonInverseVariableListener.`afterEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedSingletonInverseVariableSupply.`afterEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedCollectionInverseVariableSupply.`afterEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | CollectionInverseVariableListener.`afterEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | SingletonInverseVariableListener.`afterVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedSingletonInverseVariableSupply.`afterVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedCollectionInverseVariableSupply.`afterVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | CollectionInverseVariableListener.`afterVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | SingletonInverseVariableListener.`beforeEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedSingletonInverseVariableSupply.`beforeEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedCollectionInverseVariableSupply.`beforeEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | CollectionInverseVariableListener.`beforeEntityAdded(ScoreDirector scoreDirector, Object entity)`
    `void` | SingletonInverseVariableListener.`beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedSingletonInverseVariableSupply.`beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedCollectionInverseVariableSupply.`beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | CollectionInverseVariableListener.`beforeEntityRemoved(ScoreDirector scoreDirector, Object entity)`
    `void` | SingletonInverseVariableListener.`beforeVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedSingletonInverseVariableSupply.`beforeVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedCollectionInverseVariableSupply.`beforeVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | CollectionInverseVariableListener.`beforeVariableChanged(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedSingletonInverseVariableSupply.`clearWorkingSolution(ScoreDirector scoreDirector)`
    `void` | ExternalizedCollectionInverseVariableSupply.`clearWorkingSolution(ScoreDirector scoreDirector)`
    `protected void` | SingletonInverseVariableListener.`insert(ScoreDirector scoreDirector, Object entity)`
    `protected void` | ExternalizedSingletonInverseVariableSupply.`insert(ScoreDirector scoreDirector, Object entity)`
    `protected void` | ExternalizedCollectionInverseVariableSupply.`insert(ScoreDirector scoreDirector, Object entity)`
    `protected void` | CollectionInverseVariableListener.`insert(ScoreDirector scoreDirector, Object entity)`
    `void` | ExternalizedSingletonInverseVariableSupply.`resetWorkingSolution(ScoreDirector scoreDirector)`
    `void` | ExternalizedCollectionInverseVariableSupply.`resetWorkingSolution(ScoreDirector scoreDirector)`
    `protected void` | SingletonInverseVariableListener.`retract(ScoreDirector scoreDirector, Object entity)`
    `protected void` | ExternalizedSingletonInverseVariableSupply.`retract(ScoreDirector scoreDirector, Object entity)`
    `protected void` | ExternalizedCollectionInverseVariableSupply.`retract(ScoreDirector scoreDirector, Object entity)`
    `protected void` | CollectionInverseVariableListener.`retract(ScoreDirector scoreDirector, Object entity)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.domain.variable.listener

    Methods in org.optaplanner.core.impl.domain.variable.listener with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `void` | VariableListenerAdapter.`afterEntityAdded(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListener.`afterEntityAdded(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListenerAdapter.`afterEntityRemoved(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListener.`afterEntityRemoved(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListenerAdapter.`afterVariableChanged(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListener.`afterVariableChanged(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListenerAdapter.`beforeEntityAdded(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListener.`beforeEntityAdded(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListenerAdapter.`beforeEntityRemoved(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListener.`beforeEntityRemoved(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListenerAdapter.`beforeVariableChanged(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `void` | VariableListener.`beforeVariableChanged(ScoreDirector scoreDirector, Entity_ entity)` Deprecated.
    `default void` | StatefulVariableListener.`clearWorkingSolution(ScoreDirector scoreDirector)` Deprecated. Implement `VariableListener.close()` instead.
    `void` | StatefulVariableListener.`resetWorkingSolution(ScoreDirector scoreDirector)` Deprecated. Overrides `VariableListener.resetWorkingSolution(ScoreDirector)`.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.exhaustivesearch.node.bounder

    Methods in org.optaplanner.core.impl.exhaustivesearch.node.bounder with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `Score` | TrendBasedScoreBounder.`calculateOptimisticBound(ScoreDirector scoreDirector, Score score)`
    `Score` | ScoreBounder.`calculateOptimisticBound(ScoreDirector scoreDirector, Score score)` In OR terms, this is called the lower bound if they minimize, and upper bound if they maximize.
    `Score` | TrendBasedScoreBounder.`calculatePessimisticBound(ScoreDirector scoreDirector, Score score)`
    `Score` | ScoreBounder.`calculatePessimisticBound(ScoreDirector scoreDirector, Score score)` In OR terms, this is called the upper bound if they minimize, and lower bound if they maximize.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.move

    Methods in org.optaplanner.core.impl.heuristic.move with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `NoChangeMove<Solution_>` | NoChangeMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `protected abstract AbstractMove<Solution_>` | AbstractMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)` Called before the move is done, so the move can be evaluated and then be undone without resulting into a permanent change in the solution.
    `Move<Solution_>` | Move.`doMove(ScoreDirector<Solution_> scoreDirector)` Does the move (which indirectly affects the `getWorkingSolution()`).
    `CompositeMove<Solution_>` | CompositeMove.`doMove(ScoreDirector<Solution_> scoreDirector)`
    `AbstractMove<Solution_>` | AbstractMove.`doMove(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | NoChangeMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected abstract void` | AbstractMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)` Like `AbstractMove.doMove(ScoreDirector)` but without the `triggerVariableListeners()` call (because `AbstractMove.doMove(ScoreDirector)` already does that).
    `boolean` | NoChangeMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | Move.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)` Called before a move is evaluated to decide whether the move can be done and evaluated.
    `boolean` | CompositeMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `NoChangeMove<Solution_>` | NoChangeMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `default Move<Solution_>` | Move.`rebase(ScoreDirector<Solution_> destinationScoreDirector)` Rebases a move from an origin `ScoreDirector` to another destination `ScoreDirector` which is usually on another `Thread` or JVM.
    `CompositeMove<Solution_>` | CompositeMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `protected static Object[]` | AbstractMove.`rebaseArray(Object[] externalObjects, ScoreDirector<?> destinationScoreDirector)`
    `protected static <E> List<E>` | AbstractMove.`rebaseList(List<E> externalObjectList, ScoreDirector<?> destinationScoreDirector)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.common.decorator

    Methods in org.optaplanner.core.impl.heuristic.selector.common.decorator with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | SelectionFilter.`accept(ScoreDirector<Solution_> scoreDirector, T selection)`
    `boolean` | CompositeSelectionFilter.`accept(ScoreDirector<Solution_> scoreDirector, T selection)`
    `double` | FairSelectorProbabilityWeightFactory.`createProbabilityWeight(ScoreDirector<Solution_> scoreDirector, IterableSelector selector)`
    `double` | FixedSelectorProbabilityWeightFactory.`createProbabilityWeight(ScoreDirector<Solution_> scoreDirector, Selector_ selector)`
    `double` | SelectionProbabilityWeightFactory.`createProbabilityWeight(ScoreDirector<Solution_> scoreDirector, T selection)`
    `void` | WeightFactorySelectionSorter.`sort(ScoreDirector<Solution_> scoreDirector, List<T> selectionList)`
    `void` | SelectionSorter.`sort(ScoreDirector<Solution_> scoreDirector, List<T> selectionList)`
    `void` | ComparatorSelectionSorter.`sort(ScoreDirector<Solution_> scoreDirector, List<T> selectionList)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.entity.decorator

    Fields in org.optaplanner.core.impl.heuristic.selector.entity.decorator declared as ScoreDirector
    Modifier and Type | Field and Description
    --- | ---
    `protected ScoreDirector` | FilteringEntitySelector.`scoreDirector`

    Methods in org.optaplanner.core.impl.heuristic.selector.entity.decorator with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | PinEntityFilter.`accept(ScoreDirector<Solution_> scoreDirector, Object entity)`
    `boolean` | NullValueReinitializeVariableEntityFilter.`accept(ScoreDirector<Solution_> scoreDirector, Object entity)`
    `protected boolean` | FilteringEntitySelector.`accept(ScoreDirector scoreDirector, Object entity)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.move.composite

    Fields in org.optaplanner.core.impl.heuristic.selector.move.composite declared as ScoreDirector
    Modifier and Type | Field and Description
    --- | ---
    `protected ScoreDirector` | UnionMoveSelector.`scoreDirector`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.move.decorator

    Fields in org.optaplanner.core.impl.heuristic.selector.move.decorator declared as ScoreDirector
    Modifier and Type | Field and Description
    --- | ---
    `protected ScoreDirector` | FilteringMoveSelector.`scoreDirector`

    Methods in org.optaplanner.core.impl.heuristic.selector.move.decorator with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `protected boolean` | FilteringMoveSelector.`accept(ScoreDirector scoreDirector, Move move)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.move.factory

    Fields in org.optaplanner.core.impl.heuristic.selector.move.factory declared as ScoreDirector
    Modifier and Type | Field and Description
    --- | ---
    `protected ScoreDirector` | MoveIteratorFactoryToMoveSelectorBridge.`scoreDirector`

    Methods in org.optaplanner.core.impl.heuristic.selector.move.factory with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `Iterator<? extends Move<Solution_>>` | MoveIteratorFactory.`createOriginalMoveIterator(ScoreDirector<Solution_> scoreDirector)` When it is called depends on the configured `SelectionCacheType`.
    `Iterator<? extends Move<Solution_>>` | MoveIteratorFactory.`createRandomMoveIterator(ScoreDirector<Solution_> scoreDirector, Random workingRandom)` When it is called depends on the configured `SelectionCacheType`.
    `long` | MoveIteratorFactory.`getSize(ScoreDirector<Solution_> scoreDirector)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.move.generic

    Methods in org.optaplanner.core.impl.heuristic.selector.move.generic with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `SwapMove<Solution_>` | SwapMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `PillarSwapMove<Solution_>` | PillarSwapMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `PillarChangeMove<Solution_>` | PillarChangeMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `ChangeMove<Solution_>` | ChangeMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | SwapMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | PillarSwapMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | PillarChangeMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | ChangeMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | SwapMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | PillarSwapMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | PillarChangeMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | ChangeMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `SwapMove<Solution_>` | SwapMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `PillarSwapMove<Solution_>` | PillarSwapMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `PillarChangeMove<Solution_>` | PillarChangeMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `ChangeMove<Solution_>` | ChangeMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.move.generic.chained

    Methods in org.optaplanner.core.impl.heuristic.selector.move.generic.chained with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `TailChainSwapMove<Solution_>` | TailChainSwapMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `SubChainSwapMove<Solution_>` | SubChainSwapMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `SubChainReversingSwapMove<Solution_>` | SubChainReversingSwapMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `SubChainReversingChangeMove<Solution_>` | SubChainReversingChangeMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `SubChainChangeMove<Solution_>` | SubChainChangeMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `KOptMove<Solution_>` | KOptMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `ChainedSwapMove<Solution_>` | ChainedSwapMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `ChainedChangeMove<Solution_>` | ChainedChangeMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | TailChainSwapMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | SubChainSwapMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | SubChainReversingSwapMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | SubChainReversingChangeMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | SubChainChangeMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | KOptMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | ChainedSwapMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | ChainedChangeMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | TailChainSwapMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | SubChainSwapMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | SubChainReversingSwapMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | SubChainReversingChangeMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | SubChainChangeMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | KOptMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | ChainedChangeMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `TailChainSwapMove<Solution_>` | TailChainSwapMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `SubChainSwapMove<Solution_>` | SubChainSwapMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `SubChainReversingSwapMove<Solution_>` | SubChainReversingSwapMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `SubChainReversingChangeMove<Solution_>` | SubChainReversingChangeMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `SubChainChangeMove<Solution_>` | SubChainChangeMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `KOptMove<Solution_>` | KOptMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `ChainedSwapMove<Solution_>` | ChainedSwapMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `ChainedChangeMove<Solution_>` | ChainedChangeMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`
    `protected void` | TailChainSwapMove.`reverseChain(ScoreDirector scoreDirector, Object fromValue, Object fromEntity, Object toEntity)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.value.chained

    Methods in org.optaplanner.core.impl.heuristic.selector.value.chained with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `<Solution_> SubChain` | SubChain.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.heuristic.selector.value.decorator

    Fields in org.optaplanner.core.impl.heuristic.selector.value.decorator declared as ScoreDirector
    Modifier and Type | Field and Description
    --- | ---
    `protected ScoreDirector` | ReinitializeVariableValueSelector.`scoreDirector`
    `protected ScoreDirector` | FilteringValueSelector.`scoreDirector`
    `protected ScoreDirector` | EntityDependentSortingValueSelector.`scoreDirector`

    Methods in org.optaplanner.core.impl.heuristic.selector.value.decorator with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | MovableChainedTrailingValueFilter.`accept(ScoreDirector<Solution_> scoreDirector, Object value)`
    `protected boolean` | FilteringValueSelector.`accept(ScoreDirector scoreDirector, Object entity)`
    `protected SingletonInverseVariableSupply` | MovableChainedTrailingValueFilter.`retrieveSingletonInverseVariableSupply(ScoreDirector<Solution_> scoreDirector)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.partitionedsearch.partitioner

    Methods in org.optaplanner.core.impl.partitionedsearch.partitioner with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `List<Solution_>` | SolutionPartitioner.`splitWorkingSolution(ScoreDirector<Solution_> scoreDirector, Integer runnablePartThreadLimit)` Returns a list of partition cloned `solutions` for which each `planning entity` is partition cloned into exactly 1 of those partitions.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.partitionedsearch.scope

    Methods in org.optaplanner.core.impl.partitionedsearch.scope with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `protected PartitionChangeMove<Solution_>` | PartitionChangeMove.`createUndoMove(ScoreDirector<Solution_> scoreDirector)`
    `protected void` | PartitionChangeMove.`doMoveOnGenuineVariables(ScoreDirector<Solution_> scoreDirector)`
    `boolean` | PartitionChangeMove.`isMoveDoable(ScoreDirector<Solution_> scoreDirector)`
    `PartitionChangeMove<Solution_>` | PartitionChangeMove.`rebase(ScoreDirector<Solution_> destinationScoreDirector)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.phase.custom

    Methods in org.optaplanner.core.impl.phase.custom with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `void` | NoChangeCustomPhaseCommand.`changeWorkingSolution(ScoreDirector<Object> scoreDirector)`
    `void` | CustomPhaseCommand.`changeWorkingSolution(ScoreDirector<Solution_> scoreDirector)` Changes `working solution` of `getWorkingSolution()`.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.score.director

    Subinterfaces of ScoreDirector in org.optaplanner.core.impl.score.director
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `InnerScoreDirector<Solution_>`

    Classes in org.optaplanner.core.impl.score.director that implement ScoreDirector
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractScoreDirector<Solution_,Factory_ extends AbstractScoreDirectorFactory<Solution_>>` Abstract superclass for `ScoreDirector`.

    Methods in org.optaplanner.core.impl.score.director that return ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `ScoreDirector<Solution_>` | ScoreDirectorFactory.`buildScoreDirector()` Creates a new `ScoreDirector` instance.
    `ScoreDirector<Solution_>` | InnerScoreDirector.`clone()` Clones this `ScoreDirector` and its `working solution`.

    Methods in org.optaplanner.core.impl.score.director with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `protected String` | AbstractScoreDirector.`buildScoreCorruptionAnalysis(ScoreDirector<Solution_> uncorruptedScoreDirector, boolean predicted)`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.score.director.drools

    Classes in org.optaplanner.core.impl.score.director.drools that implement ScoreDirector
    Modifier and Type | Class and Description
    --- | ---
    `class` | `DroolsScoreDirector<Solution_>` Drools implementation of `ScoreDirector`, which directs the Rule Engine to calculate the `Score` of the `working solution`.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.score.director.drools.testgen

    Classes in org.optaplanner.core.impl.score.director.drools.testgen that implement ScoreDirector
    Modifier and Type | Class and Description
    --- | ---
    `class` | `TestGenDroolsScoreDirector<Solution_>`

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.score.director.easy

    Classes in org.optaplanner.core.impl.score.director.easy that implement ScoreDirector
    Modifier and Type | Class and Description
    --- | ---
    `class` | `EasyScoreDirector<Solution_>` Easy java implementation of `ScoreDirector`, which recalculates the `Score` of the `working solution` every time.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.score.director.incremental

    Classes in org.optaplanner.core.impl.score.director.incremental that implement ScoreDirector
    Modifier and Type | Class and Description
    --- | ---
    `class` | `IncrementalScoreDirector<Solution_>` Incremental java implementation of `ScoreDirector`, which only recalculates the `Score` of the part of the `working solution` that changed, instead of the going through the entire `PlanningSolution`.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.score.director.stream

    Classes in org.optaplanner.core.impl.score.director.stream that implement ScoreDirector
    Modifier and Type | Class and Description
    --- | ---
    `class` | `ConstraintStreamScoreDirector<Solution_>` FP streams implementation of `ScoreDirector`, which only recalculates the `Score` of the part of the `working solution` that changed, instead of the going through the entire `PlanningSolution`.

  - ### Uses of ScoreDirector in org.optaplanner.core.impl.solver

    Methods in org.optaplanner.core.impl.solver with parameters of type ScoreDirector
    Modifier and Type | Method and Description
    --- | ---
    `void` | ProblemFactChange.`doChange(ScoreDirector<Solution_> scoreDirector)` Does the change on the `PlanningSolution` of the `ScoreDirector` and notifies the `ScoreDirector` accordingly.

Copyright © 2006–2021 JBoss by Red Hat. All rights reserved.