#include #include #include #include #include #include #include "SuffixArray.h" #include "TargetCorpus.h" #include "Alignment.h" #pragma once using namespace std; class PhrasePair { public: typedef unsigned int INDEX; private: SuffixArray *m_suffixArray; TargetCorpus *m_targetCorpus; Alignment *m_alignment; INDEX m_sentence_id; char m_target_length; SuffixArray::INDEX m_source_position; char m_source_start, m_source_end; char m_target_start, m_target_end; char m_start_null, m_end_null; char m_pre_null, m_post_null; public: PhrasePair( SuffixArray *sa, TargetCorpus *tc, Alignment *a, INDEX sentence_id, char target_length, INDEX position, char source_start, char source_end, char target_start, char target_end, char start_null, char end_null, char pre_null, char post_null) :m_suffixArray(sa) ,m_targetCorpus(tc) ,m_alignment(a) ,m_sentence_id(sentence_id) ,m_source_position(position) ,m_target_length(target_length) ,m_source_start(source_start) ,m_source_end(source_end) ,m_target_start(target_start) ,m_target_end(target_end) ,m_start_null(start_null) ,m_end_null(end_null) ,m_pre_null(pre_null) ,m_post_null(post_null) {} ~PhrasePair () {} void PrintTarget( ostream* out ); void Print( ostream* out, int width ); void PrintHTML( ostream* out ); void PrintClippedHTML( ostream* out, int width ); };