From fe2d2bd6a1f1bc59b87c8724cc9af3fff6d07b50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20K=C4=99dzia?= <Pawel.Kedzia@pwr.wroc.pl> Date: Tue, 3 Jan 2012 09:44:13 +0100 Subject: [PATCH] Wrapper for Corpus --- swig/corpus.i | 33 +++++++++++++++++++++++++++++++++ swig/corpus2.i | 2 ++ 2 files changed, 35 insertions(+) create mode 100644 swig/corpus.i diff --git a/swig/corpus.i b/swig/corpus.i new file mode 100644 index 0000000..4d3f8df --- /dev/null +++ b/swig/corpus.i @@ -0,0 +1,33 @@ +#ifndef SWIG_LIBCORPUS2_CORPUS_I +#define SWIG_LIBCORPUS2_CORPUS_I + +%module libcorpuscorpus +%{ + #include <libcorpus2_whole/corpus.h> +%} + +%include "std_defs.i" +%include "document.i" + +%template(CorpusPtr) boost::shared_ptr<Corpus2::whole::Corpus>; +%template(ConstCorpusPtr) boost::shared_ptr<const Corpus2::whole::Corpus>; + +namespace Corpus2 { +namespace whole { + class Corpus { + public: + Corpus(const std::string name = ""); + + void add_document(boost::shared_ptr<Document> document); + + boost::shared_ptr<Document> next_document(); + const std::vector<boost::shared_ptr<Document> > documents() const; + }; +} // whole ns +} // Corpus2 ns + +using namespace std; +using namespace Corpus2; +using namespace Corpus2::whole; + +#endif /* SWIG_LIBCORPUS2_CORPUS_I */ diff --git a/swig/corpus2.i b/swig/corpus2.i index b925343..e92d165 100644 --- a/swig/corpus2.i +++ b/swig/corpus2.i @@ -27,6 +27,8 @@ %include "tokenreader.i" %include "tokenwriter.i" +%include "corpus.i" + %{ #include <libcorpus2/util/settings.h> static void set_verbose(bool v) { -- GitLab