Skip to content
This repository has been archived by the owner on Apr 10, 2020. It is now read-only.

Redesign

No due date 0% complete

Currently the implementation has several issues. The main issue is that it is not possible to (properly) save/load a model. This has several causes:

  • Methods added to DocumentObject cannot be saved
  • References in model objects are not saved
  • Object tree is not restored

The solution to the first problem would be to write C++ abstract base classes which cont…

Currently the implementation has several issues. The main issue is that it is not possible to (properly) save/load a model. This has several causes:

  • Methods added to DocumentObject cannot be saved
  • References in model objects are not saved
  • Object tree is not restored

The solution to the first problem would be to write C++ abstract base classes which contain pointers to Python methods.

The solution to the second problem is to use encapsulation again, but only store the model in the System adapter. All other adapter classes simply add a model object to the System model upon initialization. A recompute checks whether adapter objects were deleted.

The System.model object can be stored using jsonpickle http://jsonpickle.github.io/

The last issue will be solved by removing the adapter classes for Subsystems and Couplings.
Only System, Components, Connections and Materials will have an adapter class.
These objects will again be grouped using DocumentObjectGroups

Loading