From c4373fa00a7981a3059f8d6ce2e61ff318d8500f Mon Sep 17 00:00:00 2001 From: Pierre-Antoine Rouby <pierre-antoine.rouby@inrae.fr> Date: Thu, 9 Mar 2023 10:37:14 +0100 Subject: [PATCH] solver: Add abstract solver class. --- src/solver/ASolver.py | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/solver/ASolver.py diff --git a/src/solver/ASolver.py b/src/solver/ASolver.py new file mode 100644 index 00000000..a985cc49 --- /dev/null +++ b/src/solver/ASolver.py @@ -0,0 +1,40 @@ +# -*- coding: utf-8 -*- + +import os +import subprocess +from enum import Enum + +class STATUS(Enum): + STOPED = 0 + RUNNING = 1 + FAILED = 2 + CONF_ERROR = 3 + +class AbstractSolver(object): + def __init__(self, name): + super(AbstractSolver, self).__init__() + + self.name = name + self.status = STATUS.STOPED + + def nb_proc(self): + """ + Return the number of processor used by solver (usefull for + multiple solver run on same time). + """ + return 1 + + def status(self): + return self.status + + def set_status(self, status): + self.status = status + + def run(self): + return False + + def kill(self): + return False + + def readline(self): + return "" -- GitLab