from traits.api import Interface, String, Instance from envisage.plugin import Plugin from force_bdss.mco.base_mco import BaseMCO from force_bdss.mco.base_mco_communicator import BaseMCOCommunicator from force_bdss.mco.base_mco_model import BaseMCOModel class IMCOFactory(Interface): """Interface for the BaseMCOFactory. You should not need it, as its main use is for envisage support. Refer to BaseMCOFactory for documentation """ id = String() name = String() optimizer_class = Instance(BaseMCO) model_class = Instance(BaseMCOModel) communicator_class = Instance(BaseMCOCommunicator) plugin = Instance(Plugin) def create_optimizer(self): """""" def create_model(self, model_data=None): """""" def create_communicator(self): """"""