chore: переработана инициализация классов PlotWindow и UMLCreator
This commit is contained in:
parent
40af0afda8
commit
0587ca1a06
Binary file not shown.
Binary file not shown.
@ -8,13 +8,6 @@ from src.gui import PlotWindow, settingsWindow
|
||||
|
||||
class app:
|
||||
def __init__(self):
|
||||
|
||||
|
||||
self.request_generator = Request(server_url='http://www.plantuml.com/plantuml/svg/')
|
||||
|
||||
self.operSettings = settingsWindow("params\operator_params.json", 'Operator', self._update_settings)
|
||||
self.sysSettings = settingsWindow("params\system_params.json", 'System', self._update_settings)
|
||||
|
||||
self._load_preset()
|
||||
|
||||
|
||||
@ -26,39 +19,39 @@ class app:
|
||||
def _load_preset(self):
|
||||
self.operator_params = read_json("params/operator_params.json")
|
||||
self.system_params = read_json("params/system_params.json")
|
||||
|
||||
|
||||
self.opt_algorithm = OptAlgorithm(operator_config=self.operator_params, system_config=self.system_params)
|
||||
generator = Request(server_url='http://www.plantuml.com/plantuml/svg/')
|
||||
self.operSettings = settingsWindow("params\operator_params.json", 'Operator', self._update_settings)
|
||||
self.sysSettings = settingsWindow("params\system_params.json", 'System', self._update_settings)
|
||||
self.plotter = PlotWindow(opt =self.opt_algorithm,
|
||||
show_settings_func=self._show_settings)
|
||||
self.uml_creator = UMLCreator(request_generator=generator)
|
||||
|
||||
self.ideal_times = self._get_ideal_timings(self.opt_algorithm)
|
||||
self.parser = DiagramParser(system_config=self.system_params)
|
||||
self.parser.setData("trace_samples/2024_11_08-19_30_52.csv")
|
||||
self.bool_dict = self.parser.getBoolDict()
|
||||
self.float_dict = self.parser.getFloatDict()
|
||||
self.timings_dict = self.parser.getRealTimings()
|
||||
|
||||
self.plotter = PlotWindow(operator_config=self.operator_params,
|
||||
system_config=self.system_params,
|
||||
opt=self.opt_algorithm,
|
||||
bool_dict=self.bool_dict,
|
||||
float_dict=self.float_dict,
|
||||
timings_dict=self.timings_dict,
|
||||
show_settings_func=self._show_settings)
|
||||
|
||||
self.uml_creator = UMLCreator(operator_config=self.operator_params,
|
||||
system_config=self.system_params,
|
||||
request_generator=self.request_generator,
|
||||
ideal_time=self.ideal_times,
|
||||
bool_dict=self.bool_dict,
|
||||
float_dict=self.float_dict,
|
||||
timings_dict=self.timings_dict)
|
||||
self.mode = self.parser.getMode()
|
||||
|
||||
self.uml_creator.update_uml(operator_config=self.operator_params,
|
||||
system_config=self.system_params,
|
||||
request_generator=self.request_generator,
|
||||
ideal_time=self.ideal_times,
|
||||
bool_dict=self.bool_dict,
|
||||
float_dict=self.float_dict,
|
||||
float_dict=self.float_dict,
|
||||
mode = self.mode,
|
||||
timings_dict=self.timings_dict)
|
||||
|
||||
self.plotter.update_data(operator_config=self.operator_params,
|
||||
system_config=self.system_params,
|
||||
opt=self.opt_algorithm,
|
||||
bool_dict=self.bool_dict,
|
||||
float_dict=self.float_dict,
|
||||
mode = self.mode,
|
||||
timings_dict=self.timings_dict)
|
||||
|
||||
|
||||
def _update_settings(self, _):
|
||||
self.operator_params = self.operSettings.getParams()
|
||||
@ -68,10 +61,10 @@ class app:
|
||||
self.ideal_times = self._get_ideal_timings(self.opt_algorithm)
|
||||
|
||||
self.uml_creator.update_uml(system_config=self.system_params,
|
||||
request_generator=self.request_generator,
|
||||
ideal_time=self.ideal_times,
|
||||
bool_dict=self.bool_dict,
|
||||
float_dict=self.float_dict,
|
||||
float_dict=self.float_dict,
|
||||
mode = self.mode,
|
||||
timings_dict=self.timings_dict)
|
||||
|
||||
self.plotter.update_data(operator_config=self.operator_params,
|
||||
@ -79,6 +72,7 @@ class app:
|
||||
opt=self.opt_algorithm,
|
||||
bool_dict=self.bool_dict,
|
||||
float_dict=self.float_dict,
|
||||
mode = self.mode,
|
||||
timings_dict=self.timings_dict)
|
||||
|
||||
def _show_settings(self):
|
||||
|
@ -8,23 +8,10 @@ from src.OptAlgorithm import OptAlgorithm
|
||||
|
||||
|
||||
class PlotWindow:
|
||||
def __init__(self,
|
||||
system_config : dict,
|
||||
operator_config: dict,
|
||||
opt: OptAlgorithm,
|
||||
bool_dict: dict,
|
||||
float_dict: dict,
|
||||
timings_dict: dict,
|
||||
show_settings_func):
|
||||
def __init__(self, opt: OptAlgorithm, show_settings_func):
|
||||
pg.setConfigOptions(antialias=True)
|
||||
self.opt = opt
|
||||
self.bool_dict = bool_dict
|
||||
self.float_dict = float_dict
|
||||
self.timings_dict = timings_dict
|
||||
self.scaler = int(system_config['UML_time_scaler'])
|
||||
self.WeldTime = operator_config['time_wielding'] #[sec]
|
||||
self.alpha = 100 #[0-255 прозрачность фона]
|
||||
|
||||
self.opt = opt
|
||||
self._getIdealTimings()
|
||||
self._init_ui()
|
||||
self.settings_button.clicked.connect(show_settings_func)
|
||||
@ -36,11 +23,13 @@ class PlotWindow:
|
||||
opt: OptAlgorithm,
|
||||
bool_dict: dict,
|
||||
float_dict: dict,
|
||||
timings_dict: dict):
|
||||
timings_dict: dict,
|
||||
mode: bool):
|
||||
self.opt = opt
|
||||
self.bool_dict = bool_dict
|
||||
self.float_dict = float_dict
|
||||
self.timings_dict = timings_dict
|
||||
self.theor_mode = mode
|
||||
self.scaler = int(system_config['UML_time_scaler'])
|
||||
self.WeldTime = operator_config['time_wielding'] #[sec]
|
||||
self._getIdealTimings()
|
||||
@ -79,7 +68,6 @@ class PlotWindow:
|
||||
self.p11.setAutoVisible(x=False, y=True)
|
||||
self.p12.setAutoVisible(x=False, y=True)
|
||||
self.p13.setAutoVisible(x=False, y=True)
|
||||
self._updatePlots()
|
||||
self.widget.setStyleSheet(qts.dark_style)
|
||||
self.widget.show()
|
||||
|
||||
|
Binary file not shown.
@ -2,21 +2,8 @@ from src.uml.request_generator import Request
|
||||
|
||||
|
||||
class UMLCreator:
|
||||
def __init__(self,
|
||||
system_config: dict,
|
||||
operator_config: dict,
|
||||
request_generator: Request,
|
||||
ideal_time: list[float],
|
||||
bool_dict: dict,
|
||||
float_dict: dict,
|
||||
timings_dict: dict):
|
||||
def __init__(self, request_generator: Request):
|
||||
self._request_generator = request_generator
|
||||
self._ideal_time = ideal_time
|
||||
self.bool_dict = bool_dict
|
||||
self.float_dict = float_dict
|
||||
self.timings_dict = timings_dict
|
||||
self.scaler = int(system_config['UML_time_scaler'])
|
||||
self.WeldTime = operator_config['time_wielding']
|
||||
|
||||
|
||||
def _build_data(self):
|
||||
@ -97,17 +84,17 @@ class UMLCreator:
|
||||
def update_uml(self,
|
||||
operator_config: dict,
|
||||
system_config : dict,
|
||||
request_generator: Request,
|
||||
ideal_time: list[float],
|
||||
bool_dict: dict,
|
||||
float_dict: dict,
|
||||
timings_dict: dict):
|
||||
timings_dict: dict,
|
||||
mode: bool):
|
||||
|
||||
self._request_generator = request_generator
|
||||
self._ideal_time = ideal_time
|
||||
self.bool_dict = bool_dict
|
||||
self.float_dict = float_dict
|
||||
self.timings_dict = timings_dict
|
||||
self.theor_mode = mode
|
||||
self.scaler = int(system_config['UML_time_scaler'])
|
||||
self.WeldTime = operator_config['time_wielding']
|
||||
|
||||
|
Binary file not shown.
@ -12,8 +12,12 @@ class DiagramParser:
|
||||
self.boolDict = {}
|
||||
self.floatDict = {}
|
||||
self.timingsDict = {}
|
||||
self.theor_mode = False
|
||||
|
||||
def setData(self, path):
|
||||
if not path:
|
||||
self.theor_mode = True
|
||||
|
||||
self.data = pd.read_csv(path)
|
||||
|
||||
for signalName in self.data.columns:
|
||||
@ -38,6 +42,9 @@ class DiagramParser:
|
||||
def getRealTimings(self) -> dict:
|
||||
return self.timingsDict
|
||||
|
||||
def getMode(self) -> bool:
|
||||
return self.theor_mode
|
||||
|
||||
def _getBoolChanges(self, signalName) -> list:
|
||||
timeCode = self.data['time']
|
||||
signal_values = self.data[signalName]
|
||||
|
Loading…
Reference in New Issue
Block a user