sofa
sofa copied to clipboard
Discuss the merge of DAGNode, Node, BaseNode and Context and BaseContext
Happy to see a revival of this topic and I agree having 4 layers of abstraction is over-engineering. (for the record, BaseNode made sense a long time ago when there was a DAGNode and TreeNode)...
... To me all that should be merged:
- probably first merge DAGNode -> Node
- then BaseNode -> Node (with an alias to keep BaseNode)
- then BaseContext in Context (with an alias to keep BaseContext)
About simplifying the Node code: there is also:
- https://github.com/sofa-framework/sofa/pull/1737
Additional cleaning related is the refactor of DAGSimulation and Simulation
So the merging of Node & DAGNode in https://github.com/sofa-framework/sofa/pull/5566 is now passing unit tests. So it is ready for review and finalization.
What could could be the next doable step ?
- merge Context in BaseContext and make an alias from BaseContex to Context (DONE in #5608)
- remove the in-heritance on Node to Context
- remove DAGSimulation (DONE in #5610)
- remove the singleton in Simulation ...
Now that https://github.com/sofa-framework/sofa/pull/5566 has been merge, maybe we can try the next step.