it.unimi.dsi.sux4j.mph
Class RelativeTrieDistributor<T>

java.lang.Object
  extended by it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction<T>
      extended by it.unimi.dsi.sux4j.mph.RelativeTrieDistributor<T>
All Implemented Interfaces:
Function<T,java.lang.Long>, Object2LongFunction<T>, java.io.Serializable

public class RelativeTrieDistributor<T>
extends AbstractObject2LongFunction<T>

A distributor based on a relative trie.

A relative trie behaves like a trie, but only on a subset of all possible keys.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction
defRetValue
 
Constructor Summary
RelativeTrieDistributor(java.lang.Iterable<? extends T> elements, int log2BucketSize, TransformationStrategy<? super T> transformationStrategy)
          Creates a partial compacted trie using given elements, bucket size and transformation strategy.
RelativeTrieDistributor(java.lang.Iterable<? extends T> elements, int log2BucketSize, TransformationStrategy<? super T> transformationStrategy, java.io.File tempDir)
          Creates a partial compacted trie using given elements, bucket size, transformation strategy, and temporary directory.
 
Method Summary
 boolean containsKey(java.lang.Object o)
           
 long getLong(java.lang.Object o)
           
 long numBits()
           
 int size()
           
 
Methods inherited from class it.unimi.dsi.fastutil.objects.AbstractObject2LongFunction
clear, defaultReturnValue, defaultReturnValue, get, put, put, remove, removeLong
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RelativeTrieDistributor

public RelativeTrieDistributor(java.lang.Iterable<? extends T> elements,
                               int log2BucketSize,
                               TransformationStrategy<? super T> transformationStrategy)
Creates a partial compacted trie using given elements, bucket size and transformation strategy.

Parameters:
elements - the elements among which the trie must be able to rank.
log2BucketSize - the logarithm of the size of a bucket.
transformationStrategy - a transformation strategy that must turn the elements in elements into a list of distinct, lexicographically increasing (in iteration order) bit vectors.

RelativeTrieDistributor

public RelativeTrieDistributor(java.lang.Iterable<? extends T> elements,
                               int log2BucketSize,
                               TransformationStrategy<? super T> transformationStrategy,
                               java.io.File tempDir)
Creates a partial compacted trie using given elements, bucket size, transformation strategy, and temporary directory.

Parameters:
elements - the elements among which the trie must be able to rank.
log2BucketSize - the logarithm of the size of a bucket.
transformationStrategy - a transformation strategy that must turn the elements in elements into a list of distinct, lexicographically increasing (in iteration order) bit vectors.
tempDir - the directory where temporary files will be created, or for the default directory.
Method Detail

getLong

public long getLong(java.lang.Object o)

numBits

public long numBits()

containsKey

public boolean containsKey(java.lang.Object o)

size

public int size()