diff --git a/swig/corpus.i b/swig/corpus.i new file mode 100644 index 0000000000000000000000000000000000000000..4d3f8df0cfcfcb59afc32ec46f94753beaaedc48 --- /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 b925343a152e6c2e05c8aac41b7588b225e4c181..e92d165458a60ca3116936329761673e9c5e8dc0 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) {