class SlotAllocatorForIndexRanges0<T extends HasIndices>
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private int |
maxSlot
Max slot
|
private java.util.Map<T,java.lang.Integer> |
slots
One slot per segment
|
Modifier | Constructor and Description |
---|---|
private |
SlotAllocatorForIndexRanges0()
Constructor
|
|
SlotAllocatorForIndexRanges0(java.util.List<T> elements)
Constructor
|
Modifier and Type | Method and Description |
---|---|
private int |
allocate(T element0,
java.util.Collection<T> elements)
Allocate height slot (0-based)
|
int |
getMaxSlot()
Get max slot
|
java.lang.Integer |
getSlot(T element)
Get slot
|
private void |
layout(java.util.List<T> elements)
Layout element heights
|
private boolean |
overlap(T element1,
T element2)
Whether elements overlap
|
private final java.util.Map<T extends HasIndices,java.lang.Integer> slots
private int maxSlot
private SlotAllocatorForIndexRanges0()
public SlotAllocatorForIndexRanges0(java.util.List<T> elements)
elements
- elements to allocate slots forprivate void layout(java.util.List<T> elements)
elements
- ordered elementsprivate int allocate(T element0, java.util.Collection<T> elements)
element0
- target element to find height forelements
- element setpublic java.lang.Integer getSlot(T element)
element
- elementpublic int getMaxSlot()