Editing STEP Libraries

Warning: You are not logged in.

Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
 
STEP is the current standard for exchange of CAD data between different software packages.  BRL-CAD makes use of the NIST STEP Class Libraries code to support its step-g converter, but this source code was written before many current C++ standard practices and libraries were finalized.  As a consequence, it needs both cleanup and performance enhancements.
 
STEP is the current standard for exchange of CAD data between different software packages.  BRL-CAD makes use of the NIST STEP Class Libraries code to support its step-g converter, but this source code was written before many current C++ standard practices and libraries were finalized.  As a consequence, it needs both cleanup and performance enhancements.
  
For this project, a student should examine the existing STEPcode repo at https://github.com/stepcode/stepcode and create a list of tasks that need to be done in order to modernize the C++, improve library performance, improve code maintainability, and better document the STEP libraries.  BRL-CAD's step-g converter will serve as a test for the functionality of the library.
+
For this project, a student should examine the existing STEP code in BRL-CAD (src/other/step) and create a list of tasks that need to be done in order to modernize the C++, improve library performance, improve code maintainability, and better document the STEP libraries.  BRL-CAD's step-g converter will serve as a test for the functionality of the library.
  
 
Specific items to remember:
 
Specific items to remember:
  
 
* The libraries should compile with strict compiler flags, as used in recent BRL-CAD compilations.
 
* The libraries should compile with strict compiler flags, as used in recent BRL-CAD compilations.
 +
* The generated source code files should be usable "out of the box" for step-g (we currently use a hand-tweaked version of the generated files in the step-g converter build)
 
* Large files need to be handled quickly, so performance is important - this could be as simple as modernizing string handling, but if there are more fundamental issues they will need to be addressed as well.
 
* Large files need to be handled quickly, so performance is important - this could be as simple as modernizing string handling, but if there are more fundamental issues they will need to be addressed as well.
 
* BRL-CAD makes use of the doxygen system for source code documentation, so organizing source code documentation in the step libraries to work well with doxygen should be part of the review and updating process.
 
* BRL-CAD makes use of the doxygen system for source code documentation, so organizing source code documentation in the step libraries to work well with doxygen should be part of the review and updating process.

Please note that all contributions to BRL-CAD may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see BRL-CAD:Copyrights for details). Do not submit copyrighted work without permission!

Cancel | Editing help (opens in new window)