From b3b9a7e7a0a11972de64651fd4656ef1f21c97bd Mon Sep 17 00:00:00 2001
From: Stefano Borini <sborini@enthought.com>
Date: Wed, 16 Aug 2017 17:27:33 +0100
Subject: [PATCH] Fixed BaseMCO and Dakota with appropriate events

---
 .../core_plugins/dummy/dummy_dakota/dakota_optimizer.py  | 3 +++
 force_bdss/mco/base_mco.py                               | 9 +++++----
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/force_bdss/core_plugins/dummy/dummy_dakota/dakota_optimizer.py b/force_bdss/core_plugins/dummy/dummy_dakota/dakota_optimizer.py
index 8ceddba..96d5fe7 100644
--- a/force_bdss/core_plugins/dummy/dummy_dakota/dakota_optimizer.py
+++ b/force_bdss/core_plugins/dummy/dummy_dakota/dakota_optimizer.py
@@ -30,6 +30,7 @@ class DummyDakotaOptimizer(BaseMCO):
 
         application = self.factory.plugin.application
 
+        self.started = True
         for value in value_iterator:
             ps = subprocess.Popen(
                 [sys.argv[0],
@@ -45,3 +46,5 @@ class DummyDakotaOptimizer(BaseMCO):
                 'input': tuple(value),
                 'output': tuple(out_data)
             }
+
+        self.finished = True
diff --git a/force_bdss/mco/base_mco.py b/force_bdss/mco/base_mco.py
index 2c576d2..54bac8d 100644
--- a/force_bdss/mco/base_mco.py
+++ b/force_bdss/mco/base_mco.py
@@ -1,8 +1,7 @@
 import abc
 
-from traits.api import ABCHasStrictTraits, Instance, Event
+from traits.api import ABCHasStrictTraits, Instance, Event, Dict, Str, Tuple
 
-from force_bdss.mco.events import BaseMCOEvent
 from .i_mco_factory import IMCOFactory
 
 
@@ -15,10 +14,12 @@ class BaseMCO(ABCHasStrictTraits):
     factory = Instance(IMCOFactory)
 
     #: Triggered when an event occurs.
-    event = Event(BaseMCOEvent)
+    started = Event()
+
+    finished = Event()
 
     # Event triggered when the mco wants to send new data to listeners
-    new_data = Event()
+    new_data = Event(Dict(Str(), Tuple()))
 
     def __init__(self, factory, *args, **kwargs):
         """Initializes the MCO.
-- 
GitLab