Scicos: speedup model transformation #2 48/19348/24
authorClément DAVID <clement.david@esi-group.com>
Mon, 4 Jun 2018 13:41:15 +0000 (15:41 +0200)
committerPaul BIGNIER <paul.bignier@esi-group.com>
Thu, 26 Jul 2018 14:42:16 +0000 (16:42 +0200)
commita0c390b2bf5e28d472d47d868edce6d0beef19f5
tree3543a3c237cfb68b0a4d5088b0849bc918e3b4d5
parentc5ffd6b3b6f03b28c52d66c123e1ba2b024fe27b
Scicos: speedup model transformation #2

1. Remove 2 model lookup by using a map of ID to (initial, cloned) on
   deepClone.
2. Reduce deep cloning on scicos_flat()
3. Do not clone scs_m.objs non modified objects on insertionCall
4. Relax allocation / deallocation pressure on Adapters partial information

Preserving smart-linking information on the scilab side will end up having more temporary data stored and reseted ; move the smart-linking at allocation time.

Change-Id: Ib7f81e2ce49674ed010f26871b93a1f580b7499b
38 files changed:
scilab/modules/scicos/includes/Controller.hxx
scilab/modules/scicos/includes/adapters_utilities.hxx
scilab/modules/scicos/includes/view_scilab/Adapters.hxx
scilab/modules/scicos/macros/scicos_scicos/scicos_flat.sci
scilab/modules/scicos/src/cpp/Controller.cpp
scilab/modules/scicos/src/cpp/Model_setObjectProperties.cpp
scilab/modules/scicos/src/cpp/controller_helpers.hxx
scilab/modules/scicos/src/cpp/view_scilab/Adapters.cpp
scilab/modules/scicos/src/cpp/view_scilab/BaseAdapter.hxx
scilab/modules/scicos/src/cpp/view_scilab/BlockAdapter.cpp
scilab/modules/scicos/src/cpp/view_scilab/DiagramAdapter.cpp
scilab/modules/scicos/src/cpp/view_scilab/GraphicsAdapter.cpp
scilab/modules/scicos/src/cpp/view_scilab/GraphicsAdapter.hxx
scilab/modules/scicos/src/cpp/view_scilab/LinkAdapter.cpp
scilab/modules/scicos/src/cpp/view_scilab/LinkAdapter.hxx
scilab/modules/scicos/src/cpp/view_scilab/ModelAdapter.cpp
scilab/modules/scicos/tests/unit_tests/model/Block.dia.ref
scilab/modules/scicos/tests/unit_tests/model/Clone_SuperBlock_in_Diagram.dia.ref
scilab/modules/scicos/tests/unit_tests/model/Deep_cloning.dia.ref
scilab/modules/scicos/tests/unit_tests/model/Deep_cloning.tst
scilab/modules/scicos/tests/unit_tests/model/Delete_objects.dia.ref
scilab/modules/scicos/tests/unit_tests/model/Delete_objects.tst
scilab/modules/scicos/tests/unit_tests/model/Diagram.dia.ref
scilab/modules/scicos/tests/unit_tests/model/Diagram.tst
scilab/modules/scicos/tests/unit_tests/model/Diagram_cloning.dia.ref
scilab/modules/scicos/tests/unit_tests/model/Implicit_link.dia.ref
scilab/modules/scicos/tests/unit_tests/model/Insert_in_SuperBlock.dia.ref
scilab/modules/scicos/tests/unit_tests/model/Insert_in_SuperBlock.tst
scilab/modules/scicos/tests/unit_tests/model/SuperBlock.dia.ref
scilab/modules/scicos/tests/unit_tests/model/SuperBlock_in_SuperBlock.dia.ref
scilab/modules/scicos/tests/unit_tests/model/SuperBlock_misconnected.dia.ref [new file with mode: 0644]
scilab/modules/scicos/tests/unit_tests/model/SuperBlock_misconnected.tst [new file with mode: 0644]
scilab/modules/scicos/tests/unit_tests/model/clone_extract.dia.ref
scilab/modules/scicos/tests/unit_tests/model/clone_extract.tst
scilab/modules/scicos/tests/unit_tests/model/from_mlist.dia.ref
scilab/modules/scicos/tests/unit_tests/model/from_mlist.tst
scilab/modules/scicos/tests/unit_tests/model/link_preservation.dia.ref
scilab/modules/scicos/tests/unit_tests/scicos_new.dia.ref