2013-09-25 01:50:43 +04:00
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "PhraseDictionary.h"
|
|
|
|
|
|
|
|
namespace Moses
|
|
|
|
{
|
|
|
|
class ChartParser;
|
|
|
|
class ChartCellCollectionBase;
|
|
|
|
class ChartRuleLookupManager;
|
|
|
|
|
|
|
|
class SkeletonPT : public PhraseDictionary
|
|
|
|
{
|
|
|
|
friend std::ostream& operator<<(std::ostream&, const SkeletonPT&);
|
|
|
|
|
|
|
|
public:
|
|
|
|
SkeletonPT(const std::string &line);
|
|
|
|
|
2013-12-10 16:42:05 +04:00
|
|
|
void Load();
|
|
|
|
|
2013-09-25 19:57:01 +04:00
|
|
|
virtual void CleanUpAfterSentenceProcessing(const InputType& source);
|
|
|
|
|
2013-09-25 01:50:43 +04:00
|
|
|
// for phrase-based model
|
2013-10-03 21:58:45 +04:00
|
|
|
void GetTargetPhraseCollectionBatch(const InputPathList &inputPathQueue) const;
|
2013-09-25 01:50:43 +04:00
|
|
|
|
|
|
|
// for syntax/hiero model (CKY+ decoding)
|
|
|
|
ChartRuleLookupManager* CreateRuleLookupManager(const ChartParser&, const ChartCellCollectionBase&);
|
|
|
|
|
|
|
|
TO_STRING();
|
|
|
|
|
2013-09-26 15:16:03 +04:00
|
|
|
|
2013-09-25 19:57:01 +04:00
|
|
|
protected:
|
|
|
|
mutable std::list<TargetPhraseCollection*> m_allTPColl;
|
|
|
|
|
|
|
|
TargetPhrase *CreateTargetPhrase(const Phrase &sourcePhrase) const;
|
2013-09-25 01:50:43 +04:00
|
|
|
};
|
|
|
|
|
|
|
|
} // namespace Moses
|