diff options
author | Paul Baltescu <pauldb89@gmail.com> | 2013-06-04 23:17:57 +0100 |
---|---|---|
committer | Paul Baltescu <pauldb89@gmail.com> | 2013-06-04 23:17:57 +0100 |
commit | 02099a01350a41a99ec400e9b29df08a01d88979 (patch) | |
tree | b5af245aa6c7e00e3d4b088c9e7e3b893d080a26 /extractor/alignment.h | |
parent | 891502bdd646c21954684763f322b107568a072e (diff) |
Serialize data structures.
Diffstat (limited to 'extractor/alignment.h')
-rw-r--r-- | extractor/alignment.h | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/extractor/alignment.h b/extractor/alignment.h index 4596f92b..dc5a8b55 100644 --- a/extractor/alignment.h +++ b/extractor/alignment.h @@ -5,6 +5,10 @@ #include <vector> #include <boost/filesystem.hpp> +#include <boost/serialization/serialization.hpp> +#include <boost/serialization/split_member.hpp> +#include <boost/serialization/utility.hpp> +#include <boost/serialization/vector.hpp> namespace fs = boost::filesystem; using namespace std; @@ -19,18 +23,23 @@ class Alignment { // Reads alignment from text file. Alignment(const string& filename); + // Creates empty alignment. + Alignment(); + // Returns the alignment for a given sentence. virtual vector<pair<int, int>> GetLinks(int sentence_index) const; - // Writes alignment to file in binary format. - void WriteBinary(const fs::path& filepath); - virtual ~Alignment(); - protected: - Alignment(); + bool operator==(const Alignment& alignment) const; private: + friend class boost::serialization::access; + + template<class Archive> void serialize(Archive& ar, unsigned int) { + ar & alignments; + } + vector<vector<pair<int, int>>> alignments; }; |