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

- Packages that use InnerScoreDirector
  Package | Description
  --- | ---
  org.optaplanner.core.impl.domain.variable.anchor |
  org.optaplanner.core.impl.domain.variable.custom |
  org.optaplanner.core.impl.domain.variable.descriptor |
  org.optaplanner.core.impl.domain.variable.inverserelation |
  org.optaplanner.core.impl.domain.variable.listener.support |
  org.optaplanner.core.impl.domain.variable.supply |
  org.optaplanner.core.impl.heuristic.selector.move.generic.chained |
  org.optaplanner.core.impl.heuristic.thread |
  org.optaplanner.core.impl.partitionedsearch.scope |
  org.optaplanner.core.impl.phase.scope |
  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.scope |
  org.optaplanner.core.impl.solver.termination |

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

    Methods in org.optaplanner.core.impl.domain.variable.anchor with parameters of type InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `VariableListener<Solution_,​?>` | AnchorShadowVariableDescriptor.`buildVariableListener​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `AnchorVariableSupply` | AnchorVariableDemand.`createExternalizedSupply​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `protected void` | AnchorVariableListener.`insert​(InnerScoreDirector<Solution_,​?> scoreDirector, Object entity)` |

  - ### Uses of InnerScoreDirector in org.optaplanner.core.impl.domain.variable.custom

    Methods in org.optaplanner.core.impl.domain.variable.custom with parameters of type InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `VariableListener<Solution_,​?>` | CustomShadowVariableDescriptor.`buildVariableListener​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `SingletonInverseVariableSupply` | CustomShadowVariableDemand.`createExternalizedSupply​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `boolean` | CustomShadowVariableDescriptor.`hasVariableListener​(InnerScoreDirector<Solution_,​?> scoreDirector)` |

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

    Methods in org.optaplanner.core.impl.domain.variable.descriptor with parameters of type InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract VariableListener<Solution_,​?>` | ShadowVariableDescriptor.`buildVariableListener​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `boolean` | ShadowVariableDescriptor.`hasVariableListener​(InnerScoreDirector<Solution_,​?> scoreDirector)` |

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

    Methods in org.optaplanner.core.impl.domain.variable.inverserelation with parameters of type InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `VariableListener<Solution_,​?>` | InverseRelationShadowVariableDescriptor.`buildVariableListener​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `CollectionInverseVariableSupply` | CollectionInverseVariableDemand.`createExternalizedSupply​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `SingletonInverseVariableSupply` | SingletonInverseVariableDemand.`createExternalizedSupply​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `protected void` | CollectionInverseVariableListener.`insert​(InnerScoreDirector<Solution_,​?> scoreDirector, Object entity)` |
    `protected void` | SingletonInverseVariableListener.`insert​(InnerScoreDirector<Solution_,​?> scoreDirector, Object entity)` |
    `protected void` | CollectionInverseVariableListener.`retract​(InnerScoreDirector<Solution_,​?> scoreDirector, Object entity)` |
    `protected void` | SingletonInverseVariableListener.`retract​(InnerScoreDirector<Solution_,​?> scoreDirector, Object entity)` |

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

    Fields in org.optaplanner.core.impl.domain.variable.listener.support declared as InnerScoreDirector
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected InnerScoreDirector<Solution_,​?>` | VariableListenerSupport.`scoreDirector` |

    Constructors in org.optaplanner.core.impl.domain.variable.listener.support with parameters of type InnerScoreDirector
    Constructor | Description
    --- | ---
    `VariableListenerSupport​(InnerScoreDirector<Solution_,​?> scoreDirector)` |

  - ### Uses of InnerScoreDirector in org.optaplanner.core.impl.domain.variable.supply

    Methods in org.optaplanner.core.impl.domain.variable.supply with parameters of type InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `Supply_` | Demand.`createExternalizedSupply​(InnerScoreDirector<Solution_,​?> scoreDirector)` | Only called if the domain model doesn't already support the demand (through a shadow variable usually).

  - ### Uses of InnerScoreDirector 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 InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | TailChainSwapMove.`reverseChain​(InnerScoreDirector scoreDirector, Object fromValue, Object fromEntity, Object toEntity)` |

  - ### Uses of InnerScoreDirector in org.optaplanner.core.impl.heuristic.thread

    Methods in org.optaplanner.core.impl.heuristic.thread that return InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `InnerScoreDirector<Solution_,​Score_>` | SetupOperation.`getScoreDirector()` |

    Constructors in org.optaplanner.core.impl.heuristic.thread with parameters of type InnerScoreDirector
    Constructor | Description
    --- | ---
    `SetupOperation​(InnerScoreDirector<Solution_,​Score_> innerScoreDirector)` |

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

    Methods in org.optaplanner.core.impl.partitionedsearch.scope with parameters of type InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <Solution_> PartitionChangeMove<Solution_>` | PartitionChangeMove.`createMove​(InnerScoreDirector<Solution_,​?> scoreDirector, int partIndex)` |

  - ### Uses of InnerScoreDirector in org.optaplanner.core.impl.phase.scope

    Methods in org.optaplanner.core.impl.phase.scope that return InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `<Score_ extends Score<Score_>> InnerScoreDirector<Solution_,​Score_>` | AbstractMoveScope.`getScoreDirector()` |
    `<Score_ extends Score<Score_>> InnerScoreDirector<Solution_,​Score_>` | AbstractPhaseScope.`getScoreDirector()` |
    `<Score_ extends Score<Score_>> InnerScoreDirector<Solution_,​Score_>` | AbstractStepScope.`getScoreDirector()` |

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

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

    Methods in org.optaplanner.core.impl.score.director that return InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `InnerScoreDirector<Solution_,​Score_>` | AbstractScoreDirectorFactory.`buildScoreDirector()` |
    `InnerScoreDirector<Solution_,​Score_>` | InnerScoreDirectorFactory.`buildScoreDirector()` |
    `InnerScoreDirector<Solution_,​Score_>` | InnerScoreDirectorFactory.`buildScoreDirector​(boolean lookUpEnabled, boolean constraintMatchEnabledPreference)` | Like `InnerScoreDirectorFactory.buildScoreDirector()`, but optionally disables `ConstraintMatch` tracking and look up for more performance (presuming the `ScoreDirector` implementation actually supports it to begin with).
    `InnerScoreDirector<Solution_,​Score_>` | InnerScoreDirector.`clone()` | Clones this `ScoreDirector` and its `working solution`.
    `InnerScoreDirector<Solution_,​Score_>` | AbstractScoreDirector.`createChildThreadScoreDirector​(ChildThreadType childThreadType)` |
    `InnerScoreDirector<Solution_,​Score_>` | InnerScoreDirector.`createChildThreadScoreDirector​(ChildThreadType childThreadType)` |

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

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

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

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

    Classes in org.optaplanner.core.impl.score.director.drools.testgen that implement InnerScoreDirector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `TestGenDroolsScoreDirector<Solution_,​Score_ extends Score<Score_>>` |

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

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

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

    Classes in org.optaplanner.core.impl.score.director.incremental that implement InnerScoreDirector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `IncrementalScoreDirector<Solution_,​Score_ extends Score<Score_>>` | 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 InnerScoreDirector in org.optaplanner.core.impl.score.director.stream

    Classes in org.optaplanner.core.impl.score.director.stream that implement InnerScoreDirector
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `BavetConstraintStreamScoreDirector<Solution_,​Score_ extends Score<Score_>>` | 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`.
    `class` | `DroolsConstraintStreamScoreDirector<Solution_,​Score_ extends Score<Score_>>` | 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 InnerScoreDirector in org.optaplanner.core.impl.solver.scope

    Fields in org.optaplanner.core.impl.solver.scope declared as InnerScoreDirector
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected InnerScoreDirector<Solution_,​?>` | SolverScope.`scoreDirector` |

    Methods in org.optaplanner.core.impl.solver.scope that return InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `InnerScoreDirector<Solution_,​?>` | SolverScope.`getScoreDirector()` |

    Methods in org.optaplanner.core.impl.solver.scope with parameters of type InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | SolverScope.`setScoreDirector​(InnerScoreDirector<Solution_,​?> scoreDirector)` |

  - ### Uses of InnerScoreDirector in org.optaplanner.core.impl.solver.termination

    Methods in org.optaplanner.core.impl.solver.termination with parameters of type InnerScoreDirector
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected double` | ScoreCalculationCountTermination.`calculateTimeGradient​(InnerScoreDirector<Solution_,​?> scoreDirector)` |
    `protected boolean` | ScoreCalculationCountTermination.`isTerminated​(InnerScoreDirector<Solution_,​?> scoreDirector)` |