summaryrefslogtreecommitdiff
path: root/python/src/observer.h
diff options
context:
space:
mode:
authorPatrick Simianer <simianer@cl.uni-heidelberg.de>2012-06-13 14:42:07 +0200
committerPatrick Simianer <simianer@cl.uni-heidelberg.de>2012-06-13 14:42:07 +0200
commitdcba237fdda20cb32a5d9890c3beae790db446c2 (patch)
treeb09846c7ed1ea3c0f13748ed13ce49efeca7fecc /python/src/observer.h
parentd86299e31deb81a836b1b2f2a356a6f4b28eda9e (diff)
parent34c2c129a376abfc79e76cf2fa1282b89ef605b6 (diff)
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'python/src/observer.h')
-rw-r--r--python/src/observer.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/python/src/observer.h b/python/src/observer.h
new file mode 100644
index 00000000..d398f2f7
--- /dev/null
+++ b/python/src/observer.h
@@ -0,0 +1,22 @@
+#include "decoder/hg.h"
+#include "decoder/decoder.h"
+#include <iostream>
+
+struct BasicObserver: public DecoderObserver {
+ Hypergraph* hypergraph;
+ BasicObserver() : hypergraph(NULL) {}
+ ~BasicObserver() {
+ if(hypergraph != NULL) delete hypergraph;
+ }
+ void NotifyDecodingStart(const SentenceMetadata& smeta) {}
+ void NotifySourceParseFailure(const SentenceMetadata& smeta) {}
+ void NotifyTranslationForest(const SentenceMetadata& smeta, Hypergraph* hg) {
+ if(hypergraph != NULL) delete hypergraph;
+ hypergraph = new Hypergraph(*hg);
+ }
+ void NotifyAlignmentFailure(const SentenceMetadata& semta) {
+ if(hypergraph != NULL) delete hypergraph;
+ }
+ void NotifyAlignmentForest(const SentenceMetadata& smeta, Hypergraph* hg) {}
+ void NotifyDecodingComplete(const SentenceMetadata& smeta) {}
+};