View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0013131 | Open CASCADE | OCCT:Foundation Classes | public | 2006-08-03 20:39 | 2012-01-13 17:05 |
Reporter | Assigned To | ||||
Priority | normal | Severity | feature | ||
Status | closed | Resolution | fixed | ||
OS | All | ||||
Fixed in Version | 6.1.1 | ||||
Summary | 0013131: Optimize code of OCC classes generated by WOK | ||||
Description | Some very basic OCC classes, first of all, the ones generated automatically by WOK, such as Handles, are implemented in not optimal way. For instance, for each Handle() class empty constructor is implemented explicitly in CXX file. This makes destruction of Handle a call to several functions (one per level of inheritance). This is not needed actually, since Handle classes (besides the basis one, Handle(Standard_Transient)) do not provide any fields or other data that would require destruction. It is safe to trust generation of default destructor to compiler -- this will be faster and lead to less binary code. Another example: for each class OCC redefines new() and delete() operators so as to call OCC memory manager. This is not needed for classes inheriting some other class (e.g. Standard_Transient) since these operators are inherited. | ||||
Additional information and documentation updates | Documentation remark, added by ABV 2006-08-10 09:55:34: New features: Improvements: Declaration of basic OCCT classes such as Standard_Transient and templates for generation of Handle classes have been improved to optimize typical low-level operations with classes manipulated by Handle such as IsKind(), DownCast(), and creation/destruction of Handle objects. Note that method Standard_Transient::IsKind() is not virtual anymore, and it is not redefined by every descendant class. Changes: Modified entities: | ||||
Tags | No tags attached. | ||||
Test case number | |||||
related to | 0013051 | closed | Using nonexistent objects in Standard_ForMapOfTypes class |
Date Modified | Username | Field | Change |
---|---|---|---|
2006-08-08 18:13 | bugmaster | Assigned To | bugmaster => abv |
2006-08-08 18:13 | bugmaster | Status | new => assigned |
2006-08-08 18:28 |
|
OtherBugsDependingOnThis | => 13051 |
2006-08-08 18:37 |
|
Status | assigned => resolved |
2006-09-06 09:42 | bugmaster | Status | resolved => verified |
2006-11-01 18:55 | bugmaster | Status | verified => closed |
2006-11-01 18:55 | bugmaster | Resolution | @0@ => fixed |
2011-08-02 11:23 | bugmaster | Category | OCCT:FDC => OCCT:Foundation Classes |
2012-01-13 17:05 |
|
Description Updated | |
2012-01-13 17:05 |
|
Additional Information Updated |