object Z2 extends ZN
- Alphabetic
- By Inheritance
- Z2
- ZN
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Value Members
- val BitsPerDimension: Int
- val Dimensions: Int
- val MaxMask: Long
- val TotalBits: Int
- def apply(x: Int, y: Int): Z2
- def apply(zvalue: Long): Z2
-
def
combine(z: Long): Int
combine every other bit to form a value.
-
def
contains(range: ZRange, value: Long): Boolean
Is the value contained in the range.
-
def
contains(range: ZRange, value: ZRange): Boolean
Is the value contained in the range.
Is the value contained in the range. Considers user-space.
- range
range
- value
value to be tested
- Definition Classes
- ZN
-
def
cut(r: ZRange, xd: Long, inRange: Boolean): List[ZRange]
Cuts Z-Range in two and trims based on user space, can be used to perform augmented binary search
Cuts Z-Range in two and trims based on user space, can be used to perform augmented binary search
- Definition Classes
- ZN
-
def
longestCommonPrefix(values: Long*): ZPrefix
Calculates the longest common binary prefix between two z longs
Calculates the longest common binary prefix between two z longs
- returns
(common prefix, number of bits in common)
- Definition Classes
- ZN
-
def
overlaps(range: ZRange, value: ZRange): Boolean
Does the value overlap with the range.
-
def
split(value: Long): Long
insert 0 between every bit in value.
- def unapply(z: Z2): Option[(Int, Int)]
-
def
zdivide(p: Long, rmin: Long, rmax: Long): (Long, Long)
Returns (litmax, bigmin) for the given range and point
Returns (litmax, bigmin) for the given range and point
- p
point
- rmin
minimum value
- rmax
maximum value
- returns
(litmax, bigmin)
- Definition Classes
- ZN
-
def
zranges(zbounds: Array[ZRange], precision: Int = 64, maxRanges: Option[Int] = None, maxRecurse: Option[Int] = Some(ZN.DefaultRecurse)): Seq[IndexRange]
Calculates ranges in index space that match any of the input bounds.
Calculates ranges in index space that match any of the input bounds. Uses breadth-first searching to allow a limit on the number of ranges returned.
To improve performance, the following decisions have been made: uses loops instead of foreach/maps uses java queues instead of scala queues allocates initial sequences of decent size sorts once at the end before merging
- zbounds
search space
- precision
precision to consider, in bits (max 64)
- maxRanges
loose cap on the number of ranges to return. A higher number of ranges will have less false positives, but require more processing.
- maxRecurse
max levels of recursion to apply before stopping
- returns
ranges covering the search space
- Definition Classes
- ZN
-
def
zranges(zbounds: ZRange, precision: Int, maxRanges: Option[Int]): Seq[IndexRange]
- Definition Classes
- ZN
-
def
zranges(zbounds: ZRange, precision: Int): Seq[IndexRange]
- Definition Classes
- ZN
-
def
zranges(zbounds: ZRange): Seq[IndexRange]
- Definition Classes
- ZN