Class Penalty
java.lang.Object
org.apache.xmlgraphics.image.loader.util.Penalty
Immutable class representing a penalty value. It's valid value range is that of an
Integer
, but giving Integer.MAX_VALUE
a special meaning: it means infinite
penalty, i.e. a candidate with this penalty will be excluded from any choice.-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionadd
(int value) Adds a penalty to this one and returns the combined penalty.Adds a penalty to this one and returns the combined penalty.int
getValue()
Returns the penalty value.boolean
Indicates whether this is an infinite penalty, meaning that a solution with this penalty is effectively ineligible.static Penalty
toPenalty
(int value) Turns a penalty value into a penaly object.toString()
static int
truncate
(long penalty) Truncates the long penalty value to an integer without sign side-effects.
-
Field Details
-
ZERO_PENALTY
-
INFINITE_PENALTY
-
-
Method Details
-
toPenalty
Turns a penalty value into a penaly object.- Parameters:
value
- the penalty value- Returns:
- the penalty object
-
add
Adds a penalty to this one and returns the combined penalty.- Parameters:
value
- the penalty value to add- Returns:
- the resulting penalty
-
add
Adds a penalty to this one and returns the combined penalty.- Parameters:
value
- the penalty value to add- Returns:
- the resulting penalty
-
getValue
public int getValue()Returns the penalty value.- Returns:
- the penalty value
-
isInfinitePenalty
public boolean isInfinitePenalty()Indicates whether this is an infinite penalty, meaning that a solution with this penalty is effectively ineligible.- Returns:
- true if this is an infinite penalty
-
toString
-
truncate
public static int truncate(long penalty) Truncates the long penalty value to an integer without sign side-effects.- Parameters:
penalty
- the penalty value as a long- Returns:
- the penalty value as an int
-