open-simulation-platform / libcosimpy

Python wrapper for libcosim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Separate out subcategories of manipulators, observers and executions into child classes

msteinsto opened this issue · comments

There is currently a singular parent class for CosimManipulator, CosimObserver and CosimExecution objects. Initializing each of them currently uses a non-Pythonic [ClassName].from_[specific_object] or [ClassName].create_[specific_object] approach.

This enhancement would also allow functions such as start_time_series to be renamed to start while making it more intuitive to use (all functions within a class will be relevant and can be applied to the object).

Suggested parent class and new child class split:

  • CosimManipulator -> OverrideManipulator, ScenarioManagerManipulator
  • CosimObserver -> LastValueObserver, ToDirectoryObserver, TimeSeriesObserver
  • CosimExecution -> CosimExecution, OspConfigExecution, SspExecution