| |
| |
| |
| |
| |
| |
| #pragma once |
|
|
| #include <vector> |
| #include "../../legacy/Range.h" |
| #include "../../legacy/Bitmap.h" |
| #include "../../TypeDef.h" |
| #include "../Search.h" |
| #include "Stacks.h" |
|
|
| namespace Moses2 |
| { |
| class Hypothesis; |
| class InputPath; |
| class TargetPhrases; |
| class TargetPhraseImpl; |
|
|
| namespace NSNormal |
| { |
| class Stacks; |
|
|
| class Search: public Moses2::Search |
| { |
| public: |
| Search(Manager &mgr); |
| virtual ~Search(); |
|
|
| virtual void Decode(); |
| const Hypothesis *GetBestHypo() const; |
|
|
| void AddInitialTrellisPaths(TrellisPaths<TrellisPath> &paths) const; |
|
|
| protected: |
| Stacks m_stacks; |
|
|
| void Decode(size_t stackInd); |
| void Extend(const Hypothesis &hypo, const InputPath &path); |
| void Extend(const Hypothesis &hypo, const TargetPhrases &tps, |
| const InputPath &path, const Bitmap &newBitmap, SCORE estimatedScore); |
| void Extend(const Hypothesis &hypo, const TargetPhraseImpl &tp, |
| const InputPath &path, const Bitmap &newBitmap, SCORE estimatedScore); |
|
|
| }; |
|
|
| } |
| } |
|
|