package edu.berkeley.cs.nlp.ocular.model.transition; import java.util.Collection; import edu.berkeley.cs.nlp.ocular.gsm.GlyphChar; import edu.berkeley.cs.nlp.ocular.model.TransitionStateType; import edu.berkeley.cs.nlp.ocular.util.Tuple2; /** * @author Taylor Berg-Kirkpatrick (tberg@eecs.berkeley.edu) */ public interface SparseTransitionModel { public static interface TransitionState { public int getLanguageIndex(); /** * The index of the character that was generated by the language model. */ public int getLmCharIndex(); /** * The index of the character that will be rendered, as opposed to the * underlying character generated by the language model. */ public GlyphChar getGlyphChar(); public TransitionStateType getType(); public int getOffset(); public int getExposure(); public Collection<Tuple2<TransitionState,Double>> forwardTransitions(); public Collection<Tuple2<TransitionState,Double>> nextLineStartStates(); public double endLogProb(); } public Collection<Tuple2<TransitionState,Double>> startStates(); }