001    package calhoun.analysis.crf;
002    
003    import calhoun.analysis.crf.io.InputSequence;
004    
005    
006    /** Since Features are computed as needed dynamically at runtime, a FeatureManager controls training and dynamic creation of the features. 
007     * A FeatureManager manages features generated from a given InputType. 
008     * 
009     * This is a feature manager that implements an explicit length distribution.
010     * */
011    public interface FeatureManagerEdgeExplicitLength<InputType> extends FeatureManager<InputType> {
012    
013            /**
014             * @param seq
015             * @param pos
016             * @param length
017             * @param prevState
018             * @param state
019             * @param result
020             */
021            void evaluateEdgeLength(InputSequence<? extends InputType> seq, int pos, int length, int prevState, int state, FeatureList result);
022    }