public class BKDReader.IndexTree
extends java.lang.Object
implements java.lang.Cloneable
Modifier and Type | Field and Description |
---|---|
private ByteArrayDataInput |
in |
private long[] |
leafBlockFPStack |
private int[] |
leftNodePositions |
private int |
level |
private boolean[] |
negativeDeltas |
private int |
nodeID |
private int[] |
rightNodePositions |
private BytesRef |
scratch |
private int |
splitDim |
private int[] |
splitDims |
private byte[][] |
splitPackedValueStack |
private byte[][] |
splitValuesStack |
Constructor and Description |
---|
IndexTree() |
Modifier and Type | Method and Description |
---|---|
BKDReader.IndexTree |
clone()
Clone, but you are not allowed to pop up past the point where the clone happened.
|
long |
getLeafBlockFP()
Only valid after pushLeft or pushRight, not pop!
|
int |
getNodeID() |
int |
getNumLeaves()
Return the number of leaves below the current node.
|
private int |
getNumLeavesSlow(int node) |
int |
getSplitDim()
Only valid after pushLeft or pushRight, not pop!
|
BytesRef |
getSplitDimValue()
Only valid after pushLeft or pushRight, not pop!
|
byte[] |
getSplitPackedValue() |
boolean |
isLeafNode() |
boolean |
nodeExists() |
void |
pop() |
void |
pushLeft() |
void |
pushRight() |
private void |
readNodeData(boolean isLeft) |
private int nodeID
private int level
private int splitDim
private final byte[][] splitPackedValueStack
private final ByteArrayDataInput in
private final long[] leafBlockFPStack
private final int[] leftNodePositions
private final int[] rightNodePositions
private final int[] splitDims
private final boolean[] negativeDeltas
private final byte[][] splitValuesStack
private final BytesRef scratch
public void pushLeft()
public BKDReader.IndexTree clone()
clone
in class java.lang.Object
public void pushRight()
public void pop()
public boolean isLeafNode()
public boolean nodeExists()
public int getNodeID()
public byte[] getSplitPackedValue()
public int getSplitDim()
public BytesRef getSplitDimValue()
public long getLeafBlockFP()
public int getNumLeaves()
private int getNumLeavesSlow(int node)
private void readNodeData(boolean isLeft)