MantisBT - Open CASCADE
View Issue Details
0030675Open CASCADE[OCCT] OCCT:Visualizationpublic2019-04-24 19:532019-05-28 08:36
kgv 
bugmaster 
normalintegration request 
verifiedfixed 
 
[OCCT] 7.4.0* 
Not required
0030675: Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation
Class PrsMgr_ModedPresentation does nothing but stores display mode index and PrsMgr_Presentation instance.

It is suggested removing dummy class.
N/A
No tags attached.
related to 0030674verified bugmaster Visualization, AIS_InteractiveObject - fix accessibility of several properties 
related to 0025341new kgv Visualization - disallow displaying object as part of connected one and as a free one at the same time 
related to 0030687verified kgv Visualization - remove redundant interfaces SelectBasics_EntityOwner and SelectBasics_SensitiveEntity 
Issue History
2019-04-24 19:53kgvNew Issue
2019-04-24 19:53kgvAssigned To => kgv
2019-04-24 19:53kgvRelationship addedrelated to 0030674
2019-04-24 19:59gitNote Added: 0083972
2019-04-24 20:48gitNote Added: 0083974
2019-04-24 21:58gitNote Added: 0083978
2019-04-25 01:19gitNote Added: 0083980
2019-04-25 13:14gitNote Added: 0083985
2019-04-25 13:23gitNote Added: 0083986
2019-04-25 18:26gitNote Added: 0083991
2019-04-25 18:26gitNote Added: 0083992
2019-04-25 18:29gitNote Added: 0083993
2019-04-25 18:49gitNote Added: 0083994
2019-04-25 21:16gitNote Added: 0083998
2019-04-25 23:52gitNote Added: 0084001
2019-04-26 02:09kgvSummaryVisualization - remove redundant class PrsMgr_ModedPresentation => Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation
2019-04-26 02:11gitNote Added: 0084002
2019-04-26 02:12kgvNote Added: 0084003
2019-04-26 02:12kgvAssigned Tokgv => san
2019-04-26 02:12kgvStatusnew => resolved
2019-04-26 12:23kgvRelationship addedrelated to 0025341
2019-04-29 20:23sanNote Added: 0084055
2019-04-29 20:23sanAssigned Tosan => bugmaster
2019-04-29 20:23sanStatusresolved => reviewed
2019-04-30 13:59bugmasterTest case number => Not required
2019-04-30 14:02bugmasterNote Added: 0084070
2019-04-30 14:02bugmasterStatusreviewed => tested
2019-04-30 14:12gitNote Added: 0084071
2019-04-30 14:23gitNote Added: 0084072
2019-05-01 14:12kgvRelationship addedrelated to 0030687
2019-05-04 13:32gitNote Added: 0084129
2019-05-04 13:34kgvNote Added: 0084130
2019-05-08 12:38bugmasterChangeset attached => occt master 7dd7c146
2019-05-08 12:38bugmasterStatustested => verified
2019-05-08 12:38bugmasterResolutionopen => fixed
2019-05-08 13:41gitNote Added: 0084245
2019-05-08 13:41gitNote Added: 0084248
2019-05-08 13:41gitNote Added: 0084249
2019-05-08 13:42gitNote Added: 0084254

Notes
(0083972)
git   
2019-04-24 19:59   
Branch CR30675 has been created by kgv.

SHA-1: 8529f71038b866e10effb6d73fe5ea3fb8e60fb8


Detailed log of new commits:

Author: kgv
Date: Wed Apr 24 19:53:17 2019 +0300

    0030675: Visualization - remove redundant class PrsMgr_ModedPresentation

Author: kgv
Date: Wed Apr 24 18:50:29 2019 +0300

    0030669: Visualization - AIS_Manipulator ignores parent transformation
    
    AIS_Manipulator::Transform() now considers object parent transformation.
    
    Added new command vchild for easier testing of low-level connections between presentations.

Author: kgv
Date: Thu Apr 4 09:44:16 2019 +0300

    0030674: Visualization, AIS_InteractiveObject - fix accessibility of several properties
    
    AIS_InteractiveObject/SelectMgr_SelectableObject/PrsMgr_PresentableObject
    - added missing getters;
    - removed redundant private sections;
    - improved documentation;
    - AIS_InteractiveObject::Compute() marked as pure interface;
    - methods within this hierarchy have been moved to the base class, when reasonable.
    
    Removed redundant typedefs to pointers (PrsMgr_PresentationPointer, PrsMgr_PresentableObjectPointer).
(0083974)
git   
2019-04-24 20:48   
Branch CR30675 has been updated by kgv.

SHA-1: 4ef91599ef488f73ef6903904994c9b62f37f117


Detailed log of new commits:

Author: kgv
Date: Wed Apr 24 20:42:15 2019 +0300

    PrsMgr_Prs proxy class has been removed and PrsMgr_Presentation now inherits Prs3d_Presentation.

(0083978)
git   
2019-04-24 21:58   
Branch CR30675 has been updated forcibly by kgv.

SHA-1: 725b0a0b759b708bacde2ff7d47c7357a4778217
(0083980)
git   
2019-04-25 01:19   
Branch CR30675 has been updated forcibly by kgv.

SHA-1: 8446ed4016d85a3dce5fa2a98c79ec5bf783ea9a
(0083985)
git   
2019-04-25 13:14   
Branch CR30675 has been updated forcibly by kgv.

SHA-1: 2971c3c8fa576dde0b31203f4a1c0bd1d33a6d8b
(0083986)
git   
2019-04-25 13:23   
Branch CR30675 has been updated by kgv.

SHA-1: 3e2c9369a291c007409e622eae5c57b878071270


Detailed log of new commits:

Author: kgv
Date: Thu Apr 25 13:16:49 2019 +0300

    Graphic3d_Structure - avoid redundant casts

(0083991)
git   
2019-04-25 18:26   
Branch CR30675 has been updated forcibly by kgv.

SHA-1: 1593a53cf6b9585ebfd1158950649c52f36990d7
(0083992)
git   
2019-04-25 18:26   
Branch CR30675 has been updated by kgv.

SHA-1: 82d9305b9a97674a90712a2ef3a2eefdf79b678e


Detailed log of new commits:

Author: kgv
Date: Thu Apr 25 18:19:57 2019 +0300

    Avoid forward declaration of Prs3d_Presentation class.

(0083993)
git   
2019-04-25 18:29   
Branch CR30675 has been updated forcibly by kgv.

SHA-1: 330a3c6d27bc465b22d95474fc2987cdc9b87e63
(0083994)
git   
2019-04-25 18:49   
Branch CR30675 has been updated by kgv.

SHA-1: 8de7b42a106cb451f58cf8d41003fe063d92f848


Detailed log of new commits:

Author: kgv
Date: Thu Apr 25 18:42:56 2019 +0300

    Remove redundant proxy class Prs3d_Presentation.

(0083998)
git   
2019-04-25 21:16   
Branch CR30675 has been updated by kgv.

SHA-1: 4bd0da7d091f58679e3f4ae4243f19758007c644


Detailed log of new commits:

Author: kgv
Date: Thu Apr 25 21:10:00 2019 +0300

    # workaround crash

(0084001)
git   
2019-04-25 23:52   
Branch CR30675 has been updated forcibly by kgv.

SHA-1: 7f6f5685c7d2ecb2ba0dbb7d701864b89ae40220
(0084002)
git   
2019-04-26 02:11   
Branch CR30675_1 has been created by kgv.

SHA-1: 42da91c536f88fbd2fa93ebb666b910bda25cec1


Detailed log of new commits:

Author: kgv
Date: Wed Apr 24 19:53:17 2019 +0300

    0030675: Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation
    
    Removed redundant proxy class Prs3d_Presentation - Graphic3d_Structure now should be used directly.
    Removed auxiliary class PrsMgr_ModedPresentation holding Structure and Display Mode index (field has been moved to Structure itself),
    so that PrsMgr_Presentations (AIS_InteractiveObject::Presentations()) now holds Structures directly.
    PrsMgr_Prs proxy class has been removed, and PrsMgr_Presentation now inherits Graphic3d_Structure.
    
    Graphic3d_Structure, maps declarations have been corrected to use class instead of void*, which allowed to avoid redundant casts.
    Several methods have been also modified to avoid creating Handle from this pointer.
    AIS package headers have been cleaned up from forward declaration of Prs3d_Presentation class.
    
    Fixed dereference of destroyed presentations within connected and HLR computed objects:
    - AIS_InteractiveContext::Disconnect() now erases connected presentation.
    - Graphic3d_CView::Clear() now removes destructed structures from Computed list.
(0084003)
kgv   
2019-04-26 02:12   
Patch is ready for review.

http://jenkins-test-12.nnov.opencascade.com:8080/view/CR30675-CR30675-2-KGV/ [^]
(0084055)
san   
2019-04-29 20:23   
Branch CR30675_1 in occt and branch CR30675 in occt-products reviewed without remarks.
(0084070)
bugmaster   
2019-04-30 14:02   
Combination -
OCCT branch : CR30675
master SHA - 7f6f5685c7d2ecb2ba0dbb7d701864b89ae40220
d67d4b811012eef8913d3c535c29654d0acf3c4c
Products branch : CR30675 SHA - 97dbf29f29d1c384199547002bb8af7375776740
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 16530.159999999938 / 16536.609999999906 [-0.04%]
Products
Total CPU difference: 10554.980000000041 / 10546.95000000005 [+0.08%]
Windows-64-VC14:
OCCT
Total CPU difference: 18076.59375 / 17960.6875 [+0.65%]
Products
Total CPU difference: 12145.296875 / 12065.3125 [+0.66%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention
(0084071)
git   
2019-04-30 14:12   
Branch CR30675_1 has been updated by kgv.

SHA-1: 7d0057a4423b7eff3a9e15c40a4f2c5f72d91c22


Detailed log of new commits:

Author: kgv
Date: Tue Apr 30 14:05:45 2019 +0300

    # remarks: make Graphic3d_StructureManager::Connect() definition symmetric to Disconnect()
    # passing structure by pointer.

(0084072)
git   
2019-04-30 14:23   
Branch CR30675_2 has been created by kgv.

SHA-1: 46d46e24785337b24f04e096981025930597eba4


Detailed log of new commits:

Author: kgv
Date: Wed Apr 24 19:53:17 2019 +0300

    0030675: Visualization - remove redundant proxy classes in hierarchy of PrsMgr_Presentation
    
    Removed redundant proxy class Prs3d_Presentation - Graphic3d_Structure now should be used directly.
    Removed auxiliary class PrsMgr_ModedPresentation holding Structure and Display Mode index (field has been moved to Structure itself),
    so that PrsMgr_Presentations (AIS_InteractiveObject::Presentations()) now holds Structures directly.
    PrsMgr_Prs proxy class has been removed, and PrsMgr_Presentation now inherits Graphic3d_Structure.
    
    Graphic3d_Structure, maps declarations have been corrected to use class instead of void*, which allowed to avoid redundant casts.
    Several methods have been also modified to avoid creating Handle from this pointer.
    AIS package headers have been cleaned up from forward declaration of Prs3d_Presentation class.
    
    Fixed dereference of destroyed presentations within connected and HLR computed objects:
    - AIS_InteractiveContext::Disconnect() now erases connected presentation.
    - Graphic3d_CView::Clear() now removes destructed structures from Computed list.
(0084129)
git   
2019-05-04 13:32   
Branch CR30675_3 has been created by kgv.

SHA-1: 9309fc6da27ba137f014021a45dabe9cfc625379


Detailed log of new commits:

Author: kgv
Date: Sat May 4 13:25:10 2019 +0300

    # 0030675 - fix inaccessibility of PrsMgr_Presentation methods
(0084130)
kgv   
2019-05-04 13:34   
Dear bugmaster,

please amend a correction pushed to CR30675_3 branch (based on IR-WEEK18).
(0084245)
git   
2019-05-08 13:41   
Branch CR30675_3 has been deleted by inv.

SHA-1: 9309fc6da27ba137f014021a45dabe9cfc625379
(0084248)
git   
2019-05-08 13:41   
Branch CR30675_2 has been deleted by inv.

SHA-1: 46d46e24785337b24f04e096981025930597eba4
(0084249)
git   
2019-05-08 13:41   
Branch CR30675_1 has been deleted by inv.

SHA-1: 7d0057a4423b7eff3a9e15c40a4f2c5f72d91c22
(0084254)
git   
2019-05-08 13:42   
Branch CR30675 has been deleted by inv.

SHA-1: 7f6f5685c7d2ecb2ba0dbb7d701864b89ae40220