Package org.apache.lucene.index

## Interface PointValues.PointTree

- All Superinterfaces:
    `Cloneable`
  All Known Implementing Classes:
    `MutablePointTree`
  Enclosing class:
    PointValues

      public static interface PointValues.PointTree
      extends Cloneable

  Basic operations to read the KD-tree.
  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `PointValues.PointTree` | `clone()` | Clone, the current node becomes the root of the new tree.
    `byte[]` | `getMaxPackedValue()` | Return the maximum packed value of the current node.
    `byte[]` | `getMinPackedValue()` | Return the minimum packed value of the current node.
    `boolean` | `moveToChild()` | Move to the first child node and return `true` upon success.
    `boolean` | `moveToParent()` | Move to the parent node and return `true` upon success.
    `boolean` | `moveToSibling()` | Move to the next sibling node and return `true` upon success.
    `long` | `size()` | Return the number of points below the current node.
    `void` | `visitDocIDs​(PointValues.IntersectVisitor visitor)` | Visit all the docs below the current node.
    `void` | `visitDocValues​(PointValues.IntersectVisitor visitor)` | Visit all the docs and values below the current node.

- - ### Method Detail

    - #### clone

          PointValues.PointTree clone()

      Clone, the current node becomes the root of the new tree.

    - #### moveToChild

          boolean moveToChild()
                       throws IOException

      Move to the first child node and return `true` upon success. Returns `false` for leaf nodes and `true` otherwise.
      Throws:
        `IOException`

    - #### moveToSibling

          boolean moveToSibling()
                         throws IOException

      Move to the next sibling node and return `true` upon success. Returns `false` if the current node has no more siblings.
      Throws:
        `IOException`

    - #### moveToParent

          boolean moveToParent()
                        throws IOException

      Move to the parent node and return `true` upon success. Returns `false` for the root node and `true` otherwise.
      Throws:
        `IOException`

    - #### getMinPackedValue

          byte[] getMinPackedValue()

      Return the minimum packed value of the current node.

    - #### getMaxPackedValue

          byte[] getMaxPackedValue()

      Return the maximum packed value of the current node.

    - #### size

          long size()

      Return the number of points below the current node.

    - #### visitDocIDs

          void visitDocIDs​(PointValues.IntersectVisitor visitor)
                    throws IOException

      Visit all the docs below the current node.
      Throws:
        `IOException`

    - #### visitDocValues

          void visitDocValues​(PointValues.IntersectVisitor visitor)
                       throws IOException

      Visit all the docs and values below the current node.
      Throws:
        `IOException`