| namespace Moses2 | |
| { | |
| template<typename WORD> | |
| class TargetPhrase; | |
| class LexicalReordering; | |
| class Hypothesis; | |
| class System; | |
| class Scores; | |
| class Bitmap; | |
| class ManagerBase; | |
| class InputType; | |
| class InputPathBase; | |
| class Word; | |
| class LRState: public FFState | |
| { | |
| public: | |
| typedef LRModel::ReorderingType ReorderingType; | |
| const TargetPhrase<Moses2::Word> *prevTP; | |
| LRState(const LRModel &config, LRModel::Direction dir, size_t offset); | |
| virtual void Init(const LRState *prev, const TargetPhrase<Moses2::Word> &topt, | |
| const InputPathBase &path, bool first, const Bitmap *coverage) = 0; | |
| virtual void Expand(const ManagerBase &mgr, const LexicalReordering &ff, | |
| const Hypothesis &hypo, size_t phraseTableInd, Scores &scores, | |
| FFState &state) const = 0; | |
| void CopyScores(const System &system, Scores &accum, const TargetPhrase<Moses2::Word> &topt, | |
| ReorderingType reoType) const; | |
| protected: | |
| const LRModel& m_configuration; | |
| LRModel::Direction m_direction; | |
| size_t m_offset; | |
| int | |
| ComparePrevScores(const TargetPhrase<Moses2::Word> *other) const; | |
| }; | |
| } | |