diff --git a/apps/Mnist.cpp b/apps/Mnist.cpp
index 9aaffe6adbc06506b39a7d7a1a3e09c9a7ed1edd..14c8db0eb1d753da3e8ec1cdef53038677292d5b 100644
--- a/apps/Mnist.cpp
+++ b/apps/Mnist.cpp
@@ -96,9 +96,11 @@ int main(int argc, char** argv) {
auto& fc1_out = experiment.template output<TimeObjectiveOutput>(fc1, t_obj);
fc1_out.template add_postprocessing<process::FeatureScaling>();
fc1_out.template add_analysis<analysis::Activity>();
- fc1_out.template add_analysis<analysis::Coherence>();
+ //fc1_out.template add_analysis<analysis::Coherence>();
fc1_out.template add_analysis<analysis::Svm>();
experiment.run(10000);
+ return experiment.wait();
+
}
diff --git a/include/Experiment.h b/include/Experiment.h
index ab47c09bb40e8e8c7a7ba0182cbbcfceee80f2ec..f982cbd67aaf92b0ccd0224da9066cb129eabd9d 100644
--- a/include/Experiment.h
+++ b/include/Experiment.h
@@ -89,6 +89,7 @@ public:
void initialize(const Shape& input_shape);
void run(size_t refresh_interval = 1);
+ int wait();
void tick(size_t current_layer_index, size_t sample_count);
void refresh(size_t current_layer_index);
diff --git a/src/Experiment.cpp b/src/Experiment.cpp
index e8ef32fbca64900b12a607ccea705ca6f322c9bc..8737d8dc38473b2d09e48730dc91bdb9de2e8531 100644
--- a/src/Experiment.cpp
+++ b/src/Experiment.cpp
@@ -288,6 +288,14 @@ void AbstractExperiment::run(size_t refresh_interval) {
}
+int AbstractExperiment::wait() {
+#ifdef DISPLAY_PLOT
+ return _app->exec();
+#else
+ return 0;
+#endif
+}
+
#ifdef DISPLAY_PLOT
void AbstractExperiment::tick(size_t current_layer_index, size_t sample_count) {
for(auto& p : _plots) {