## Uses of Class
org.apache.fop.layoutmgr.BreakingAlgorithm.KnuthNode

- Packages that use BreakingAlgorithm.KnuthNode
  Package | Description
  --- | ---
  org.apache.fop.layoutmgr | FOP's layout engine.

- - ### Uses of BreakingAlgorithm.KnuthNode in org.apache.fop.layoutmgr

    Fields in org.apache.fop.layoutmgr declared as BreakingAlgorithm.KnuthNode
    Modifier and Type | Field and Description
    --- | ---
    `protected BreakingAlgorithm.KnuthNode[]` | BreakingAlgorithm.`activeLines` The set of active nodes in ascending line order.
    `BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.KnuthNode.`next` next possible node in the same line
    `BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.KnuthNode.`previous` best node for the preceding breakpoint

    Methods in org.apache.fop.layoutmgr that return BreakingAlgorithm.KnuthNode
    Modifier and Type | Method and Description
    --- | ---
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`compareNodes(BreakingAlgorithm.KnuthNode node1, BreakingAlgorithm.KnuthNode node2)` Compare two KnuthNodes and return the node with the least demerit.
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`createNode(int position, int line, int fitness, int totalWidth, int totalStretch, int totalShrink)` Creates a new active node for a break from the best active node of the given fitness class to the element at the given position.
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`createNode(int position, int line, int fitness, int totalWidth, int totalStretch, int totalShrink, double adjustRatio, int availableShrink, int availableStretch, int difference, double totalDemerits, BreakingAlgorithm.KnuthNode previous)` Creates a new active node for a feasible breakpoint at the given position.
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`getLastTooLong()`
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`getLastTooShort()` Return the last node that yielded a too short line.
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`getNode(int line)` Returns the first active node for the given line.
    `BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.BestRecords.`getNode(int fitness)`
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`recoverFromOverflow()` Recover from an overflow condition.
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`recoverFromTooLong(BreakingAlgorithm.KnuthNode lastTooLong)` Recover from a `BreakingAlgorithm.KnuthNode` leading to a line that is too long.

    Methods in org.apache.fop.layoutmgr with parameters of type BreakingAlgorithm.KnuthNode
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | BreakingAlgorithm.`activateNode(BreakingAlgorithm.KnuthNode node, int difference, double r, double demerits, int fitnessClass, int availableShrink, int availableStretch)` Activate the given node.
    `protected void` | BreakingAlgorithm.`addNode(int line, BreakingAlgorithm.KnuthNode node)` Add a node at the end of the given line's existing active nodes.
    `void` | BreakingAlgorithm.BestRecords.`addRecord(double demerits, BreakingAlgorithm.KnuthNode node, double adjust, int availableShrink, int availableStretch, int difference, int fitness)` Registers the new best active node for the given fitness class.
    `protected void` | BreakingAlgorithm.`calculateBreakPoints(BreakingAlgorithm.KnuthNode node, KnuthSequence par, int total)` Determines the set of optimal breakpoints corresponding to the given active node.
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`compareNodes(BreakingAlgorithm.KnuthNode node1, BreakingAlgorithm.KnuthNode node2)` Compare two KnuthNodes and return the node with the least demerit.
    `protected double` | BreakingAlgorithm.`computeAdjustmentRatio(BreakingAlgorithm.KnuthNode activeNode, int difference)` Return the adjustment ratio needed to make up for the difference.
    `protected double` | BalancingColumnBreakingAlgorithm.`computeDemerits(BreakingAlgorithm.KnuthNode activeNode, KnuthElement element, int fitnessClass, double r)` Computes the demerits of the current breaking (that is, up to the given element), if the next-to-last chosen breakpoint is the given active node.
    `protected double` | BreakingAlgorithm.`computeDemerits(BreakingAlgorithm.KnuthNode activeNode, KnuthElement element, int fitnessClass, double r)` Computes the demerits of the current breaking (that is, up to the given element), if the next-to-last chosen breakpoint is the given active node.
    `protected int` | BreakingAlgorithm.`computeDifference(BreakingAlgorithm.KnuthNode activeNode, KnuthElement element, int elementIndex)` Return the difference between the natural width of a line that would be made between the given active node and the given element, and the available width of the real line.
    `protected void` | BreakingAlgorithm.`createForcedNodes(BreakingAlgorithm.KnuthNode node, int line, int elementIdx, int difference, double r, double demerits, int fitnessClass, int availableShrink, int availableStretch, int newWidth, int newStretch, int newShrink)`
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`createNode(int position, int line, int fitness, int totalWidth, int totalStretch, int totalShrink, double adjustRatio, int availableShrink, int availableStretch, int difference, double totalDemerits, BreakingAlgorithm.KnuthNode previous)` Creates a new active node for a feasible breakpoint at the given position.
    `protected void` | BreakingAlgorithm.`deactivateNode(BreakingAlgorithm.KnuthNode node, int line)` Deactivate the given node
    `protected void` | BreakingAlgorithm.`forceNode(BreakingAlgorithm.KnuthNode node, int line, int elementIdx, int difference, double r, double demerits, int fitnessClass, int availableShrink, int availableStretch)` Force the given `BreakingAlgorithm.KnuthNode`, and register it.
    `protected BreakingAlgorithm.KnuthNode` | BreakingAlgorithm.`recoverFromTooLong(BreakingAlgorithm.KnuthNode lastTooLong)` Recover from a `BreakingAlgorithm.KnuthNode` leading to a line that is too long.
    `protected void` | BreakingAlgorithm.`removeNode(int line, BreakingAlgorithm.KnuthNode node)` Remove the given active node registered for the given line.
    `protected int` | BreakingAlgorithm.`restartFrom(BreakingAlgorithm.KnuthNode restartingNode, int currentIndex)` Restart from the given node at the given index.
    `abstract void` | BreakingAlgorithm.`updateData2(BreakingAlgorithm.KnuthNode bestActiveNode, KnuthSequence sequence, int total)` Empty method, hook for subclasses.

    Constructors in org.apache.fop.layoutmgr with parameters of type BreakingAlgorithm.KnuthNode
    Constructor and Description
    `KnuthNode(int position, int line, int fitness, int totalWidth, int totalStretch, int totalShrink, double adjustRatio, int availableShrink, int availableStretch, int difference, double totalDemerits, BreakingAlgorithm.KnuthNode previous)` Construct node.

Copyright © 2023 Apache Software Foundation. All rights reserved.