org.optaplanner.core.impl.score.buildin.hardsoft

## Class HardSoftScoreDefinition

- java.lang.Object
- - org.optaplanner.core.impl.score.definition.AbstractScoreDefinition<S>
  - - org.optaplanner.core.impl.score.definition.AbstractFeasibilityScoreDefinition<HardSoftScore>
    - - org.optaplanner.core.impl.score.buildin.hardsoft.HardSoftScoreDefinition

- All Implemented Interfaces:
    Serializable, FeasibilityScoreDefinition<HardSoftScore>, ScoreDefinition<HardSoftScore>

      public class HardSoftScoreDefinition
      extends AbstractFeasibilityScoreDefinition<HardSoftScore>

  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `HardSoftScoreDefinition()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `HardSoftScore` | `buildOptimisticBound(InitializingScoreTrend initializingScoreTrend, HardSoftScore score)` Builds a `Score` which is equal or better than any other `Score` with more variables initialized (while the already variables don't change).
    `HardSoftScore` | `buildPessimisticBound(InitializingScoreTrend initializingScoreTrend, HardSoftScore score)` Builds a `Score` which is equal or worse than any other `Score` with more variables initialized (while the already variables don't change).
    `HardSoftScoreHolder` | `buildScoreHolder(boolean constraintMatchEnabled)` Used by `DroolsScoreDirector`.
    `HardSoftScoreInliner` | `buildScoreInliner(boolean constraintMatchEnabled)` Used by `BavetConstraintFactory`
    `HardSoftScore` | `fromLevelNumbers(int initScore, Number[] levelNumbers)` The opposite of `Score.toLevelNumbers()`.
    `int` | `getFeasibleLevelsSize()` Returns the number of levels of `Score.toLevelNumbers()`.
    `HardSoftScore` | `getOneSoftestScore()` The score that represents the softest possible one.
    `Class<HardSoftScore>` | `getScoreClass()` Returns the `Class` of the actual `Score` implementation.
    `HardSoftScore` | `getZeroScore()` The score that represents zero.
    `HardSoftScore` | `parseScore(String scoreString)` Parses the `String` and returns a `Score`.

    - ### Methods inherited from class org.optaplanner.core.impl.score.definition.AbstractScoreDefinition

      `formatScore, getInitLabel, getLevelLabels, getLevelsSize, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface org.optaplanner.core.impl.score.definition.ScoreDefinition

      `formatScore, getInitLabel, getLevelLabels, getLevelsSize, isNegativeOrZero, isPositiveOrZero`

- - ### Constructor Detail

    - #### HardSoftScoreDefinition

          public HardSoftScoreDefinition()

  - ### Method Detail

    - #### getFeasibleLevelsSize

          public int getFeasibleLevelsSize()

      Description copied from interface: `FeasibilityScoreDefinition`
      Returns the number of levels of `Score.toLevelNumbers()`. that are used to determine `FeasibilityScore.isFeasible()`.
      Returns:
        at least 0, at most `ScoreDefinition.getLevelsSize()`

    - #### getScoreClass

          public Class<HardSoftScore> getScoreClass()

      Description copied from interface: `ScoreDefinition`
      Returns the `Class` of the actual `Score` implementation. For example: returns `HardSoftScore.class` on `HardSoftScoreDefinition`.
      Returns:
        never null

    - #### getZeroScore

          public HardSoftScore getZeroScore()

      Description copied from interface: `ScoreDefinition`
      The score that represents zero.
      Returns:
        never null

    - #### getOneSoftestScore

          public HardSoftScore getOneSoftestScore()

      Description copied from interface: `ScoreDefinition`
      The score that represents the softest possible one.
      Returns:
        never null

    - #### parseScore

          public HardSoftScore parseScore(String scoreString)

      Description copied from interface: `ScoreDefinition`
      Parses the `String` and returns a `Score`.
      Parameters:
        `scoreString` - never null
      Returns:
        never null
      See Also:
        `ScoreDefinition.formatScore(Score)`, `ScoreUtils.parseScore(Class, String)`

    - #### fromLevelNumbers

          public HardSoftScore fromLevelNumbers(int initScore,
                                                Number[] levelNumbers)

      Description copied from interface: `ScoreDefinition`
      The opposite of `Score.toLevelNumbers()`.
      Parameters:
        `initScore` - `<= 0`, managed by OptaPlanner, needed as a parameter in the `Score`'s creation method, see `Score.getInitScore()`
        `levelNumbers` - never null
      Returns:
        never null

    - #### buildScoreInliner

          public HardSoftScoreInliner buildScoreInliner(boolean constraintMatchEnabled)

      Description copied from interface: `ScoreDefinition`
      Used by `BavetConstraintFactory`
      Parameters:
        `constraintMatchEnabled` - true if `ScoreDirector.isConstraintMatchEnabled()` should be true
      Returns:
        never null

    - #### buildScoreHolder

          public HardSoftScoreHolder buildScoreHolder(boolean constraintMatchEnabled)

      Description copied from interface: `ScoreDefinition`
      Used by `DroolsScoreDirector`.
      Parameters:
        `constraintMatchEnabled` - true if `ScoreDirector.isConstraintMatchEnabled()` should be true
      Returns:
        never null

    - #### buildOptimisticBound

          public HardSoftScore buildOptimisticBound(InitializingScoreTrend initializingScoreTrend,
                                                    HardSoftScore score)

      Description copied from interface: `ScoreDefinition`
      Builds a `Score` which is equal or better than any other `Score` with more variables initialized (while the already variables don't change).
      Parameters:
        `initializingScoreTrend` - never null, with `InitializingScoreTrend.getLevelsSize()` equal to `ScoreDefinition.getLevelsSize()`.
        `score` - never null, with `Score.getInitScore()` `0`.
      Returns:
        never null

    - #### buildPessimisticBound

          public HardSoftScore buildPessimisticBound(InitializingScoreTrend initializingScoreTrend,
                                                     HardSoftScore score)

      Description copied from interface: `ScoreDefinition`
      Builds a `Score` which is equal or worse than any other `Score` with more variables initialized (while the already variables don't change).
      Parameters:
        `initializingScoreTrend` - never null, with `InitializingScoreTrend.getLevelsSize()` equal to `ScoreDefinition.getLevelsSize()`.
        `score` - never null, with `Score.getInitScore()` `0`
      Returns:
        never null

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