MantisBT - Open CASCADE
View Issue Details
0028470Open CASCADE[OCCT] OCCT:Foundation Classespublic2017-02-17 11:542019-02-06 12:36
kgv 
bugmaster 
normalfeature 
closedfixed 
 
[OCCT] 7.2.0[OCCT] 7.2.0 
Not needed
0028470: Foundation Classes, NCollection_Array1 - add Resize() method for re-allocating array with new limits
NCollection_Array1 by design defines array of fixed size - the size that can be specified only within constructor.

In many contexts, this restriction is redundant and inconvenient - it is desirable to provide interface for resizing array to new limits.
N/A
No tags attached.
parent of 0028796closed bugmaster Coding Rules - fix declaration of Move constructor in NCollection_Array1 
related to 0029230assigned kgv Foundation Classes - provide move constructors for basic collections 
related to 0030478verified apn Foundation Classes, NCollection_Array2 - provide Resize/Move methods consistent to NCollection_Array1 
Issue History
2017-02-17 11:54kgvNew Issue
2017-02-17 11:54kgvAssigned To => abv
2017-02-17 12:36gitNote Added: 0063873
2017-02-17 12:36kgvNote Added: 0063874
2017-02-17 12:36kgvStatusnew => resolved
2017-02-17 12:43gitNote Added: 0063875
2017-02-17 13:48gitNote Added: 0063883
2017-02-24 22:41abvNote Added: 0063989
2017-02-24 22:41abvAssigned Toabv => bugmaster
2017-02-24 22:41abvStatusresolved => reviewed
2017-02-27 13:02gitNote Added: 0064002
2017-02-27 13:04gitNote Added: 0064003
2017-02-27 13:05kgvNote Added: 0064004
2017-02-28 18:22apvAssigned Tobugmaster => apv
2017-03-01 17:35apvTest case number => Not needed
2017-03-01 17:37apvNote Added: 0064062
2017-03-01 17:37apvAssigned Toapv => bugmaster
2017-03-01 17:37apvStatusreviewed => tested
2017-03-03 16:23bugmasterAssigned Tobugmaster => apv
2017-03-03 16:23bugmasterStatustested => assigned
2017-03-03 16:23bugmasterAssigned Toapv => abv
2017-03-03 16:23bugmasterStatusassigned => resolved
2017-03-03 16:23bugmasterAssigned Toabv => bugmaster
2017-03-03 16:23bugmasterStatusresolved => reviewed
2017-03-03 16:23bugmasterAssigned Tobugmaster => apv
2017-03-03 16:29gitNote Added: 0064109
2017-03-07 16:56apvNote Added: 0064181
2017-03-07 16:56apvAssigned Toapv => bugmaster
2017-03-07 16:56apvStatusreviewed => tested
2017-03-17 14:28bugmasterChangeset attached => occt master 4954e497
2017-03-17 14:28bugmasterStatustested => verified
2017-03-17 14:28bugmasterResolutionopen => fixed
2017-03-20 14:33gitNote Added: 0064456
2017-03-20 14:34gitNote Added: 0064471
2017-05-29 12:52kgvRelationship addedparent of 0028796
2017-09-29 16:18aivFixed in Version => 7.2.0
2017-09-29 16:25aivStatusverified => closed
2017-10-15 20:48kgvRelationship addedrelated to 0029230
2019-02-06 12:36kgvRelationship addedrelated to 0030478

Notes
(0063873)
git   
2017-02-17 12:36   
Branch CR28470 has been created by kgv.

SHA-1: 364c71f0a88078b936a0c76a42832024f6bd1135


Detailed log of new commits:

Author: kgv
Date: Fri Feb 17 12:35:13 2017 +0300

    0028470: Foundation Classes, NCollection_Array1 - add Resize() method for re-allocating array with new limits
    
    NCollection_Array1 now provides method Resize() for re-allocating array to new bounds.
    Added Move Constructor and Move Assignment operator.
(0063874)
kgv   
2017-02-17 12:36   
Patch is ready for review.
(0063875)
git   
2017-02-17 12:43   
Branch CR28470 has been updated forcibly by kgv.

SHA-1: bd1b9ede148bba8fa384000b292437ff84f60d6f
(0063883)
git   
2017-02-17 13:48   
Branch CR28470 has been updated forcibly by kgv.

SHA-1: 885933e0a5e9505f3203b1716a73ea3913b22584
(0063989)
abv   
2017-02-24 22:41   
Reviewed, please test

I have only one doubt: it may be not always necessary to spent efort for copying old data in Resize(), should not we add parameter to make this step conditional?
(0064002)
git   
2017-02-27 13:02   
Branch CR28470 has been updated by kgv.

SHA-1: 2649b14edf9835dc77652c370cc082441ec54a1e


Detailed log of new commits:

Author: kgv
Date: Mon Feb 27 13:02:00 2017 +0300

    NCollection_Array1::Resize() - added argument theToCopyData.
    Added empty constructor for NCollection_Array1.

(0064003)
git   
2017-02-27 13:04   
Branch CR28470_1 has been created by kgv.

SHA-1: caaa078fe6bd8da6ab0ead7fede36c838d4d8d88


Detailed log of new commits:

Author: kgv
Date: Fri Feb 17 12:35:13 2017 +0300

    0028470: Foundation Classes, NCollection_Array1 - add Resize() method for re-allocating array with new limits
    
    NCollection_Array1 now provides method Resize() for re-allocating array to new bounds.
    Added Move Constructor and Move Assignment operator.
    Added empty constructor defining array of zero size.
    
    Poly_Triangulation, dropped duplicating fields myNbNodes and myNbTriangles.
    Removed unused file Poly_Triangulation.lxx.
(0064004)
kgv   
2017-02-27 13:05   
Remark has been applied.
(0064062)
apv   
2017-03-01 17:37   
Dear BugMaster,

Branch CR28470_1 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: caaa078fe6bd8da6ab0ead7fede36c838d4d8d88

Number of compiler warnings:
occt component:
   Linux: 0 (0 on master)
   Windows: 0 (0 on master)
   MasOS: 0 (0 on master)
products component:
   Linux: 66
   Windows: 0
   MacOS: 1199

Regressions/Differences:
Not detected

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 92575991 / 93218501 [-0.69%]
Total CPU difference: 19896.710000000112 / 19801.68000000022 [+0.48%]

Testing on Windows:
Total MEMORY difference: 57828100 / 57829936 [-0.00%]
Total CPU difference: 18679.637740498587 / 18793.846072598604 [-0.61%]
(0064109)
git   
2017-03-03 16:29   
Branch CR28470_1 has been updated forcibly by inv.

SHA-1: 37ccaa2392432bfb0eeb23320ea0b855d025a5d8
(0064181)
apv   
2017-03-07 16:56   
Dear BugMaster,

Branch CR28470_1 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: 37ccaa2392432bfb0eeb23320ea0b855d025a5d8

Number of compiler warnings:
occt component:
   Linux: 0 (0 on master)
   Windows: 0 (0 on master)
   MasOS: 0 (0 on master)
products component:
   Linux: 64
   Windows: 0
   MacOS: 1209

Regressions/Differences:
Not detected

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 92886270 / 92373786 [+0.55%]
Total CPU difference: 20037.9700000003 / 19841.150000000398 [+0.99%]

Testing on Windows:
Total MEMORY difference: 57664094 / 57663643 [+0.00%]
Total CPU difference: 18485.697297298568 / 18635.5206576986 [-0.80%]
(0064456)
git   
2017-03-20 14:33   
Branch CR28470_1 has been deleted by inv.

SHA-1: 37ccaa2392432bfb0eeb23320ea0b855d025a5d8
(0064471)
git   
2017-03-20 14:34   
Branch CR28470 has been deleted by inv.

SHA-1: 2649b14edf9835dc77652c370cc082441ec54a1e