public final class CompressibleProbBackoffValueContainer extends java.lang.Object implements ProbBackoffValueContainer
Modifier and Type | Field and Description |
---|---|
protected int |
defaultValRank |
protected long[] |
numNgramsForEachOrder |
protected boolean |
storeSuffixIndexes |
protected int[] |
suffixBitsForOrder |
protected boolean |
useMapValueArray |
protected VariableLengthBitCompressor |
valueCoder |
protected int |
valueRadix |
protected CustomWidthArray[] |
valueRanks |
protected int |
valueWidth |
Constructor and Description |
---|
CompressibleProbBackoffValueContainer(int valueRadix,
boolean storePrefixIndexes,
long[] numNgramsForEachOrder,
float[] probsForRank,
float[] backoffsForRank,
Indexer<java.lang.Float> probIndexer,
int wordWidth,
Indexer<java.lang.Float> backoffIndexer,
int backoffWidth) |
CompressibleProbBackoffValueContainer(LongToIntHashMap countCounter,
int valueRadix,
boolean storePrefixes,
long[] numNgramsForEachOrder) |
Modifier and Type | Method and Description |
---|---|
boolean |
add(int[] ngram,
int startPos,
int endPos,
int ngramOrder,
long offset,
long prefixOffset,
int word,
V val_,
long suffixOffset,
boolean ngramIsNew)
Adds a new value at the specified offset.
|
void |
clearStorageAfterCompression(int ngramOrder) |
void |
clearStorageForOrder(int ngramOrder) |
CompressibleProbBackoffValueContainer |
createFreshValues(long[] numNgramsForEachOrder_)
Creates a fresh value container for copying purposes.
|
void |
decompress(BitStream bits,
int ngramOrder,
boolean justConsume,
ProbBackoffPair outputVal)
Reads and decompresses from the bit stream bits.
|
float |
getBackoff(CustomWidthArray valueRanksForNgramOrder,
long index) |
float |
getBackoff(int ngramOrder,
long index) |
BitList |
getCompressed(long offset,
int ngramOrder)
Compresses the value at the given offset into a list of bits.
|
protected long |
getCountRank(long val) |
protected ProbBackoffPair |
getDefaultVal() |
void |
getFromOffset(long index,
int ngramOrder,
ProbBackoffPair outputVal)
Gets the value living at a particular offset.
|
protected void |
getFromRank(long rank,
ProbBackoffPair outputVal) |
long |
getInternalVal(int ngramOrder,
long index) |
float |
getProb(CustomWidthArray valueRanksForOrder,
long index) |
float |
getProb(int ngramOrder,
long index) |
protected long |
getRank(int ngramOrder,
long offset) |
ProbBackoffPair |
getScratchValue()
Creates a fresh value of object (useful for passing as an output
parameter)
|
long |
getSuffixOffset(long index,
int ngramOrder) |
protected int |
getSuffixOffsetFromInternalVal(long internalVal) |
int |
numValueBits(int ngramOrder) |
void |
setFromOtherValues(ValueContainer<ProbBackoffPair> o)
Destructively sets internal storage from another object.
|
void |
setMap(NgramMap<V> map)
Initializes a value container with the map that contains it
|
void |
setSizeAtLeast(long size,
int ngramOrder)
Sets internal storage for size for a particular n-gram order
|
boolean |
storeSuffixoffsets() |
void |
swap(long a,
long b,
int ngramOrder)
Swaps values at offsets a and b.
|
void |
trim()
Final clean up of storage.
|
void |
trimAfterNgram(int ngramOrder,
long size)
Clear storage after an n-gram order is complete
|
protected boolean |
useValueStoringArray() |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getSuffixOffset
add, clearStorageForOrder, numValueBits, setMap, setSizeAtLeast, storeSuffixoffsets, trimAfterNgram
protected final CustomWidthArray[] valueRanks
protected final boolean storeSuffixIndexes
protected final VariableLengthBitCompressor valueCoder
protected final int valueRadix
protected int valueWidth
protected final int defaultValRank
protected final long[] numNgramsForEachOrder
protected final int[] suffixBitsForOrder
protected boolean useMapValueArray
public CompressibleProbBackoffValueContainer(LongToIntHashMap countCounter, int valueRadix, boolean storePrefixes, long[] numNgramsForEachOrder)
public CompressibleProbBackoffValueContainer(int valueRadix, boolean storePrefixIndexes, long[] numNgramsForEachOrder, float[] probsForRank, float[] backoffsForRank, Indexer<java.lang.Float> probIndexer, int wordWidth, Indexer<java.lang.Float> backoffIndexer, int backoffWidth)
valueRadix
- storePrefixIndexes
- maxNgramOrder
- hasBackoffValIndexer
- noBackoffValIndexer
- probsAndBackoffsForRank
- probsForRank
- hasBackoffValIndexer
- public CompressibleProbBackoffValueContainer createFreshValues(long[] numNgramsForEachOrder_)
ValueContainer
createFreshValues
in interface ValueContainer<ProbBackoffPair>
public final float getProb(int ngramOrder, long index)
getProb
in interface ProbBackoffValueContainer
public final long getInternalVal(int ngramOrder, long index)
public final float getProb(CustomWidthArray valueRanksForOrder, long index)
public void getFromOffset(long index, int ngramOrder, ProbBackoffPair outputVal)
ValueContainer
getFromOffset
in interface ValueContainer<ProbBackoffPair>
public final float getBackoff(int ngramOrder, long index)
getBackoff
in interface ProbBackoffValueContainer
public final float getBackoff(CustomWidthArray valueRanksForNgramOrder, long index)
protected ProbBackoffPair getDefaultVal()
protected void getFromRank(long rank, ProbBackoffPair outputVal)
public ProbBackoffPair getScratchValue()
ValueContainer
getScratchValue
in interface ProbBackoffValueContainer
getScratchValue
in interface ValueContainer<ProbBackoffPair>
public void setFromOtherValues(ValueContainer<ProbBackoffPair> o)
ValueContainer
setFromOtherValues
in interface ValueContainer<ProbBackoffPair>
public void trim()
ValueContainer
trim
in interface ValueContainer<ProbBackoffPair>
protected long getCountRank(long val)
public BitList getCompressed(long offset, int ngramOrder)
CompressibleValueContainer
getCompressed
in interface CompressibleValueContainer<ProbBackoffPair>
public final void decompress(BitStream bits, int ngramOrder, boolean justConsume, ProbBackoffPair outputVal)
CompressibleValueContainer
decompress
in interface CompressibleValueContainer<ProbBackoffPair>
justConsume
- If true, nothing is returned, and the function simply consumes
the appropriate number of bits from the BitStream.public void setMap(NgramMap<V> map)
ValueContainer
setMap
in interface ValueContainer<V extends LongRepresentable<V>>
protected boolean useValueStoringArray()
public void swap(long a, long b, int ngramOrder)
CompressibleValueContainer
swap
in interface CompressibleValueContainer<V extends LongRepresentable<V>>
public boolean add(int[] ngram, int startPos, int endPos, int ngramOrder, long offset, long prefixOffset, int word, V val_, long suffixOffset, boolean ngramIsNew)
ValueContainer
add
in interface ValueContainer<V extends LongRepresentable<V>>
ngramOrder
- As always, ngramOrder is 0-based (0=unigram)public void setSizeAtLeast(long size, int ngramOrder)
ValueContainer
setSizeAtLeast
in interface ValueContainer<V extends LongRepresentable<V>>
public long getSuffixOffset(long index, int ngramOrder)
protected int getSuffixOffsetFromInternalVal(long internalVal)
internalVal
- protected long getRank(int ngramOrder, long offset)
public void clearStorageAfterCompression(int ngramOrder)
clearStorageAfterCompression
in interface CompressibleValueContainer<V extends LongRepresentable<V>>
public void trimAfterNgram(int ngramOrder, long size)
ValueContainer
trimAfterNgram
in interface ValueContainer<V extends LongRepresentable<V>>
public void clearStorageForOrder(int ngramOrder)
clearStorageForOrder
in interface ValueContainer<V extends LongRepresentable<V>>
public boolean storeSuffixoffsets()
storeSuffixoffsets
in interface ValueContainer<V extends LongRepresentable<V>>
public int numValueBits(int ngramOrder)
numValueBits
in interface ValueContainer<V extends LongRepresentable<V>>