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
commite6d3c25191873ca0cf99db8e89702ed91d65277c (patch)
treeb0697ece6f5e4a8229915758c68750793a23f776 /python/src/observer.h
parent62c805c90c5347b844f92574e240db5c65578e12 (diff)
parent3acdf1e4b37637d6df86a7b54fb0f1b0464c172b (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) {}
+};