View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0028470 | Open CASCADE | OCCT:Foundation Classes | public | 2017-02-17 11:54 | 2019-02-06 12:36 |
Reporter | kgv | Assigned To | bugmaster | ||
Priority | normal | Severity | feature | ||
Status | closed | Resolution | fixed | ||
Target Version | 7.2.0 | Fixed in Version | 7.2.0 | ||
Summary | 0028470: Foundation Classes, NCollection_Array1 - add Resize() method for re-allocating array with new limits | ||||
Description | 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. | ||||
Steps To Reproduce | N/A | ||||
Tags | No tags attached. | ||||
Test case number | Not needed | ||||
parent of | 0028796 | closed | bugmaster | Coding Rules - fix declaration of Move constructor in NCollection_Array1 |
related to | 0029230 | closed | kgv | Foundation Classes - provide move constructors for basic collections |
related to | 0030478 | closed | apn | Foundation Classes, NCollection_Array2 - provide Resize/Move methods consistent to NCollection_Array1 |
|
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. |
|
Patch is ready for review. |
|
Branch CR28470 has been updated forcibly by kgv. SHA-1: bd1b9ede148bba8fa384000b292437ff84f60d6f |
|
Branch CR28470 has been updated forcibly by kgv. SHA-1: 885933e0a5e9505f3203b1716a73ea3913b22584 |
|
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? |
|
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. |
|
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. |
|
Remark has been applied. |
|
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%] |
|
Branch CR28470_1 has been updated forcibly by inv. SHA-1: 37ccaa2392432bfb0eeb23320ea0b855d025a5d8 |
|
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%] |
|
Branch CR28470_1 has been deleted by inv. SHA-1: 37ccaa2392432bfb0eeb23320ea0b855d025a5d8 |
|
Branch CR28470 has been deleted by inv. SHA-1: 2649b14edf9835dc77652c370cc082441ec54a1e |
occt: master 4954e497 2017-02-17 09:35:13 Committer: bugmaster Details Diff |
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. Use std::move within NCollection_Array1::operator=() [fix for 0028470] |
Affected Issues 0028470 |
|
mod - src/NCollection/NCollection_Array1.hxx | Diff File | ||
mod - src/Poly/FILES | Diff File | ||
mod - src/Poly/Poly_Triangulation.cxx | Diff File | ||
mod - src/Poly/Poly_Triangulation.hxx | Diff File | ||
rm - src/Poly/Poly_Triangulation.lxx | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2017-02-17 11:54 | kgv | New Issue | |
2017-02-17 11:54 | kgv | Assigned To | => abv |
2017-02-17 12:36 | git | Note Added: 0063873 | |
2017-02-17 12:36 | kgv | Note Added: 0063874 | |
2017-02-17 12:36 | kgv | Status | new => resolved |
2017-02-17 12:43 | git | Note Added: 0063875 | |
2017-02-17 13:48 | git | Note Added: 0063883 | |
2017-02-24 22:41 |
|
Note Added: 0063989 | |
2017-02-24 22:41 |
|
Assigned To | abv => bugmaster |
2017-02-24 22:41 |
|
Status | resolved => reviewed |
2017-02-27 13:02 | git | Note Added: 0064002 | |
2017-02-27 13:04 | git | Note Added: 0064003 | |
2017-02-27 13:05 | kgv | Note Added: 0064004 | |
2017-02-28 18:22 |
|
Assigned To | bugmaster => apv |
2017-03-01 17:35 |
|
Test case number | => Not needed |
2017-03-01 17:37 |
|
Note Added: 0064062 | |
2017-03-01 17:37 |
|
Assigned To | apv => bugmaster |
2017-03-01 17:37 |
|
Status | reviewed => tested |
2017-03-03 16:23 | bugmaster | Assigned To | bugmaster => apv |
2017-03-03 16:23 | bugmaster | Status | tested => assigned |
2017-03-03 16:23 | bugmaster | Assigned To | apv => abv |
2017-03-03 16:23 | bugmaster | Status | assigned => resolved |
2017-03-03 16:23 | bugmaster | Assigned To | abv => bugmaster |
2017-03-03 16:23 | bugmaster | Status | resolved => reviewed |
2017-03-03 16:23 | bugmaster | Assigned To | bugmaster => apv |
2017-03-03 16:29 | git | Note Added: 0064109 | |
2017-03-07 16:56 |
|
Note Added: 0064181 | |
2017-03-07 16:56 |
|
Assigned To | apv => bugmaster |
2017-03-07 16:56 |
|
Status | reviewed => tested |
2017-03-17 14:28 | bugmaster | Changeset attached | => occt master 4954e497 |
2017-03-17 14:28 | bugmaster | Status | tested => verified |
2017-03-17 14:28 | bugmaster | Resolution | open => fixed |
2017-03-20 14:33 | git | Note Added: 0064456 | |
2017-03-20 14:34 | git | Note Added: 0064471 | |
2017-05-29 12:52 | kgv | Relationship added | parent of 0028796 |
2017-09-29 16:18 |
|
Fixed in Version | => 7.2.0 |
2017-09-29 16:25 |
|
Status | verified => closed |
2017-10-15 20:48 | kgv | Relationship added | related to 0029230 |
2019-02-06 12:36 | kgv | Relationship added | related to 0030478 |