2014-09-30 15:47:28 +04:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <boost/smart_ptr/shared_ptr.hpp>
|
|
|
|
#include "moses/ThreadPool.h"
|
|
|
|
#include "moses/ChartManager.h"
|
|
|
|
#include "moses/HypergraphOutput.h"
|
|
|
|
|
|
|
|
namespace Moses
|
|
|
|
{
|
|
|
|
class InputType;
|
|
|
|
class OutputCollector;
|
2014-10-10 14:35:14 +04:00
|
|
|
class IOWrapper;
|
2014-09-30 15:47:28 +04:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Translates a sentence.
|
|
|
|
**/
|
2014-09-30 15:59:31 +04:00
|
|
|
class TranslationTaskChart : public Moses::Task
|
2014-09-30 15:47:28 +04:00
|
|
|
{
|
|
|
|
public:
|
2014-10-10 14:35:14 +04:00
|
|
|
TranslationTaskChart(Moses::InputType *source, IOWrapper &ioWrapper,
|
2014-09-30 15:47:28 +04:00
|
|
|
boost::shared_ptr<Moses::HypergraphOutput<Moses::ChartManager> > hypergraphOutput);
|
|
|
|
|
2014-09-30 15:59:31 +04:00
|
|
|
~TranslationTaskChart();
|
2014-09-30 15:47:28 +04:00
|
|
|
|
|
|
|
void Run();
|
|
|
|
|
|
|
|
private:
|
|
|
|
// Non-copyable: copy constructor and assignment operator not implemented.
|
2014-09-30 15:59:31 +04:00
|
|
|
TranslationTaskChart(const TranslationTaskChart &);
|
|
|
|
TranslationTaskChart &operator=(const TranslationTaskChart &);
|
2014-09-30 15:47:28 +04:00
|
|
|
|
|
|
|
Moses::InputType *m_source;
|
2014-10-10 14:35:14 +04:00
|
|
|
IOWrapper &m_ioWrapper;
|
2014-09-30 15:47:28 +04:00
|
|
|
boost::shared_ptr<Moses::HypergraphOutput<Moses::ChartManager> > m_hypergraphOutput;
|
|
|
|
};
|
|
|
|
|
2014-10-09 16:33:16 +04:00
|
|
|
} // namespace
|
|
|
|
|