public final class KneserNeyCountValueContainer extends java.lang.Object implements ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>
| Modifier and Type | Class and Description |
|---|---|
static class |
KneserNeyCountValueContainer.KneserNeyCounts
Warning: type counts are stored internally as 32-bit ints.
|
| Constructor and Description |
|---|
KneserNeyCountValueContainer(int maxNgramOrder,
int startIndex) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(int[] ngram,
int startPos,
int endPos,
int ngramOrder,
long offset,
long contextOffset,
int word,
KneserNeyCountValueContainer.KneserNeyCounts val,
long suffixOffset,
boolean ngramIsNew)
Adds a new value at the specified offset.
|
void |
clearStorageForOrder(int ngramOrder) |
KneserNeyCountValueContainer |
createFreshValues(long[] numNgramsForEachOrder)
Creates a fresh value container for copying purposes.
|
long |
getBigramTypeCounts() |
void |
getFromOffset(long offset,
int ngramOrder,
KneserNeyCountValueContainer.KneserNeyCounts outputVal)
Gets the value living at a particular offset.
|
int |
getNumOneCountNgrams(int ngramOrder) |
int |
getNumTwoCountNgrams(int ngramOrder) |
KneserNeyCountValueContainer.KneserNeyCounts |
getScratchValue()
Creates a fresh value of object (useful for passing as an output
parameter)
|
int |
numValueBits(int ngramOrder) |
void |
setFromOtherValues(ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts> other)
Destructively sets internal storage from another object.
|
void |
setMap(NgramMap<KneserNeyCountValueContainer.KneserNeyCounts> 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 |
trim()
Final clean up of storage.
|
void |
trimAfterNgram(int ngramOrder,
long size)
Clear storage after an n-gram order is complete
|
public KneserNeyCountValueContainer(int maxNgramOrder,
int startIndex)
public KneserNeyCountValueContainer createFreshValues(long[] numNgramsForEachOrder)
ValueContainercreateFreshValues in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public void getFromOffset(long offset,
int ngramOrder,
KneserNeyCountValueContainer.KneserNeyCounts outputVal)
ValueContainergetFromOffset in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public void trimAfterNgram(int ngramOrder,
long size)
ValueContainertrimAfterNgram in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public KneserNeyCountValueContainer.KneserNeyCounts getScratchValue()
ValueContainergetScratchValue in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public boolean add(int[] ngram,
int startPos,
int endPos,
int ngramOrder,
long offset,
long contextOffset,
int word,
KneserNeyCountValueContainer.KneserNeyCounts val,
long suffixOffset,
boolean ngramIsNew)
ValueContaineradd in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>ngramOrder - As always, ngramOrder is 0-based (0=unigram)public void setSizeAtLeast(long size,
int ngramOrder)
ValueContainersetSizeAtLeast in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public void setFromOtherValues(ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts> other)
ValueContainersetFromOtherValues in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public void trim()
ValueContainertrim in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public void setMap(NgramMap<KneserNeyCountValueContainer.KneserNeyCounts> map)
ValueContainersetMap in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public void clearStorageForOrder(int ngramOrder)
clearStorageForOrder in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public boolean storeSuffixoffsets()
storeSuffixoffsets in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>public long getBigramTypeCounts()
public int getNumOneCountNgrams(int ngramOrder)
public int getNumTwoCountNgrams(int ngramOrder)
public int numValueBits(int ngramOrder)
numValueBits in interface ValueContainer<KneserNeyCountValueContainer.KneserNeyCounts>