// Path: src/main/java/edu/berkeley/nlp/lm/ContextEncodedNgramLanguageModel.java
// public static class LmContextInfo
// {
// 
// 	/**
// 	 * Offset of context (prefix) of an n-gram
// 	 */
// 	public long offset = -1L;
// 
// 	/**
// 	 * The (0-based) length of <code>context</code> (i.e.
// 	 * <code>order == 0</code> iff <code>context</code> refers to a
// 	 * unigram).
// 	 * 
// 	 * Use -1 for an empty context.
// 	 */
// 	public int order = -1;
// 
// }


import edu.berkeley.nlp.lm.ContextEncodedNgramLanguageModel.LmContextInfo;
package edu.berkeley.nlp.lm.map;


public interface ContextEncodedNgramMap<T> extends NgramMap<T>
{
	public long getOffset(final long contextOffset, final int contextOrder, final int word);

// Path: src/main/java/edu/berkeley/nlp/lm/ContextEncodedNgramLanguageModel.java
// public static class LmContextInfo
// {
// 
// 	/**
// 	 * Offset of context (prefix) of an n-gram
// 	 */
// 	public long offset = -1L;
// 
// 	/**
// 	 * The (0-based) length of <code>context</code> (i.e.
// 	 * <code>order == 0</code> iff <code>context</code> refers to a
// 	 * unigram).
// 	 * 
// 	 * Use -1 for an empty context.
// 	 */
// 	public int order = -1;
// 
// }


// Path: src/main/java/edu/berkeley/nlp/lm/map/ContextEncodedNgramMap.java
import edu.berkeley.nlp.lm.ContextEncodedNgramLanguageModel.LmContextInfo;

package edu.berkeley.nlp.lm.map;


public interface ContextEncodedNgramMap<T> extends NgramMap<T>
{
	public long getOffset(final long contextOffset, final int contextOrder, final int word);

	public LmContextInfo getOffsetForNgram(int[] ngram, int startPos, int endPos);