View Issue Details

IDProjectCategoryView StatusLast Update
0024734Open CASCADEOCCT:Codingpublic2014-11-11 12:51
ReporterdlnAssigned Toapn  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Platformx64OSWindows 
Product Version6.7.0 
Target Version6.8.0Fixed in Version6.8.0 
Summary0024734: Convertation of the generic classes to the non-generic. Part 4
Description1) Generic classes "LProp_FuncCurExt", "LProp_FuncCurNul" and "LProp_NumericCurInf" from "LProp" package converted to the non-generic classes and moved to the "Geom2dLProp" package. Therefore names of this classes were changed to "Geom2dLProp_FuncCurExt", "Geom2dLProp_FuncCurNul" and "Geom2dLProp_NumericCurInf".

2) Generic class "Sweep_LinearRegularSweep" from "Sweep" package converted to the non-generic classes and moved to the "BRepSweep" package. Therefore name of this class was changed to "BRepSweep_NumLinearRegularSweep". Also 2 internal classes(Array2OfShapes and SequenceOfShapes) of "BRepSweep_NumLinearRegularSweep" moved to "BRepSweep.cdl".

3) Generic classes "Primitives_Wedge" and "Primitives_OneAxis" from "Primitives" package converted to the non-generic classes and moved to the "BRepPrim" package. Therefore names of this classes were changed to "BRepPrim_GWedge" and "BRepPrim_OneAxis". Also enum "Direction" moved to BRepPrim. Therefore all "Primitives" package was deleted.

And some other minor changes were done.

TagsNo tags attached.
Test case numberNot needed

Relationships

child of 0024487 closedabv Getting rid of generic CDL classes 

Activities

dln

2014-03-19 11:42

developer   ~0028345

Changes are ready for review in CR24734 branch.

abv

2014-03-19 15:49

manager   ~0028356

I have no remarks from my side. Igor, please review.

ifv

2014-03-19 16:31

developer   ~0028362

I think, it is not necessary to make
 class Array2OfShapes
       instantiates Array2 from TCollection (Shape from TopoDS);
    class SequenceOfShapes
       instantiates Sequence from TCollection (Shape from TopoDS);

because we have ready to use the same containers in TopTools.
Besides, if we have general strategy to remove .gxx,
may be it is better to use
NCollection_Array2<TopoDS_Shape>...?

abv

2014-03-19 16:44

manager   ~0028363

For the moment, I suggest to keep using TCollection instances (good to use existing ones if they are available in another package). We will replace TCollection instances by NCollection implementation "en masse" in a separate move.

dln

2014-03-20 09:07

developer   ~0028374

Last edited: 2014-03-20 09:25

I agree with Andrey, because using of NCollection_Array2 template class means getting rid of "cdl", but on this step i convert cdl generic classes to the cdl non-generic. And I suppose that steps: converting of "cdl" to "non-cdl" and replacing of "TCollection" to "NCollection" will be done "en masse" in a separate moves as Andrey said.

But it is really necessary to delete classes Array2OfShapesand and SequenceOfShapes and use the same containers from TopTools.

dln

2014-03-20 09:58

developer   ~0028375

Dear Andrey,

Check it please.

abv

2014-03-20 10:39

manager   ~0028380

No other remarks, please test

mkv

2014-03-21 17:46

tester   ~0028430

Dear BugMaster,

Branch CR24734 (and products from GIT master) was compiled on Linux and Windows platforms and tested.
SHA-1: dd5369a57b850ddcd4f93a6b5cf3cbbe62081aa2

Number of compiler warnings:

occt component :
Linux: 30 (30 on master)
Windows: 0 (0 on master)

products component :
Linux: 12 (12 on master)
Windows: 2 (2 on master)

Regressions/Differences:
No regressions/differences

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 386235832 / 386276008
Total CPU difference: 57487.470000000016 / 48827.5

Testing on Windows:
Total MEMORY difference: 430412488 / 430943812
Total CPU difference: 33785.5625 / 35761.78125

There are no differences in images found by testdiff.

Related Changesets

occt: master a104bb8f

2014-03-27 12:29:16

dln


Committer: apn Details Diff
0024734: Convertation of the generic classes to the non-generic. Part 4

Generic classes "LProp_FuncCurExt", "LProp_FuncCurNul" and "LProp_NumericCurInf" from "LProp" package converted to the non-generic classes and moved to the "Geom2dLProp" package. Therefore names of this classes were changed to "Geom2dLProp_FuncCurExt", "Geom2dLProp_FuncCurNul" and "Geom2dLProp_NumericCurInf".
Generic class "Sweep_LinearRegularSweep" from "Sweep" package converted to the non-generic classes and moved to the "BRepSweep" package. Therefore name of this class was changed to "BRepSweep_NumLinearRegularSweep". Also 2 internal classes of "BRepSweep_NumLinearRegularSweep" moved to "BRepSweep.cdl".
Generic classes "Primitives_Wedge" and "Primitives_OneAxis" from "Primitives" package converted to the non-generic classes and moved to the "BRepPrim" package. Therefore names of this classes were changed to "BRepPrim_GWedge" and "BRepPrim_OneAxis". Also enum "Direction" moved to BRepPrim. Therefore all "Primitives" package was deleted.
And some other minor changes were done.

Internal classes Array2OfShapes and SequenceOfShapes from BRepSweep_NumLinearRegularSweep replaced to Array2OfShape and SequenceOfShape from TopTools.
Affected Issues
0024734
mod - adm/UDLIST Diff File
mod - src/BRepPrim/BRepPrim.cdl Diff File
rm - src/BRepPrim/BRepPrim_OneAxis.hxx Diff File
rm - src/BRepPrim/BRepPrim_Replace.tcl Diff File
rm - src/BRepPrim/BRepPrim_WOKSteps.edl Diff File
rm - src/BRepPrim/FILES Diff File
mod - src/BRepPrimAPI/BRepPrimAPI_MakeBox.cxx Diff File
mod - src/BRepSweep/BRepSweep.cdl Diff File
rm - src/BRepSweep/BRepSweep_NumLinearRegularSweep.hxx Diff File
rm - src/BRepSweep/BRepSweep_Replace.tcl Diff File
rm - src/BRepSweep/BRepSweep_WOKSteps.edl Diff File
rm - src/BRepSweep/FILES Diff File
mod - src/Geom2dLProp/Geom2dLProp.cdl Diff File
mod - src/LProp/LProp.cdl Diff File
rm - src/Primitives/Primitives.cdl Diff File
mod - src/Sweep/Sweep.cdl Diff File
mod - src/TKPrim/PACKAGES Diff File

Issue History

Date Modified Username Field Change
2014-03-19 11:41 dln New Issue
2014-03-19 11:41 dln Assigned To => abv
2014-03-19 11:42 dln Note Added: 0028345
2014-03-19 11:42 dln Status new => resolved
2014-03-19 11:43 dln Description Updated
2014-03-19 15:48 abv Assigned To abv => ifv
2014-03-19 15:49 abv Note Added: 0028356
2014-03-19 16:31 ifv Note Added: 0028362
2014-03-19 16:31 ifv Assigned To ifv => dln
2014-03-19 16:31 ifv Status resolved => feedback
2014-03-19 16:44 abv Note Added: 0028363
2014-03-20 09:07 dln Note Added: 0028374
2014-03-20 09:08 dln Note Edited: 0028374
2014-03-20 09:25 dln Note Edited: 0028374
2014-03-20 09:58 dln Note Added: 0028375
2014-03-20 09:58 dln Assigned To dln => abv
2014-03-20 09:58 dln Status feedback => resolved
2014-03-20 10:39 abv Note Added: 0028380
2014-03-20 10:39 abv Assigned To abv => bugmaster
2014-03-20 10:39 abv Status resolved => reviewed
2014-03-20 14:56 mkv Assigned To bugmaster => mkv
2014-03-21 17:46 mkv Note Added: 0028430
2014-03-21 17:46 mkv Test case number => Not needed
2014-03-21 17:46 mkv Assigned To mkv => bugmaster
2014-03-21 17:46 mkv Status reviewed => tested
2014-03-28 16:38 apn Changeset attached => occt master a104bb8f
2014-03-28 16:38 apn Assigned To bugmaster => apn
2014-03-28 16:38 apn Status tested => verified
2014-03-28 16:38 apn Resolution open => fixed
2014-04-04 11:54 abv Target Version 6.7.1 => 6.8.0
2014-04-10 14:47 kgv Relationship added child of 0024487
2014-11-11 12:47 aiv Fixed in Version => 6.8.0
2014-11-11 12:51 aiv Status verified => closed