MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0031481Open CASCADE[OCCT] OCCT:Data Exchangepublic2020-04-02 01:162020-12-31 16:25
Reporterabv 
Assigned Toabv 
PrioritynormalSeverityintegration request 
StatusresolvedResolutionopen 
PlatformOSOS Version
Product Version 
Target Version[OCCT] 7.6.0*Fixed in Version 
Summary0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
DescriptionExpToCas tool has been developed in 1999-2002 for generation of new classes in OCCT DE module, representing entities from STEP standard. It includes parser of EXPRESS schema and generator of CDL and CXX files that can be easily added to the OCCT STEP reader.

As new classes need to be added from time to time, it makes sense to integrate this tool to OCCT.
Steps To ReproduceNot possible
TagsNo tags attached.
Test case number
Attached Files

- Relationships
related to 0031740closedbugmaster Open CASCADE Configuration - recover support of Yacc and Lex generation 

-  Notes
(0091399)
git (administrator)
2020-04-02 01:20

Branch CR31481 has been created by abv.

SHA-1: 3ac2d4ca774dada5905dd8f6ed62aa8c95c285be


Detailed log of new commits:

Author: abv
Date: Thu Apr 2 01:21:08 2020 +0300

    0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
    
    Integration of ExpToCas tool ported to modern state of OCCT:
    - new package Express and toolkit TKExpress for EXPRESS data structures and OCCT class generator
    - executable ExpToCasExe including lax/yacc parsers, for parsing a Part 21 file and generating classes
    
    Off-topic: genproj.tcl is improved to deal correctly with FILES files containing CRLF end-of-lines
(0091400)
abv (manager)
2020-04-02 01:22

I have updated old ExpToCas tool to build with current OCCT, and put it as a branch in OCCT code. What remains is to update code generator to produce modern code (at minimum, generate HXX instead of CDL).
(0091402)
git (administrator)
2020-04-02 09:44

Branch CR31481 has been updated forcibly by abv.

SHA-1: 88b6bbb93dcb927aae800b87a6a8219964c2f23e
(0091412)
git (administrator)
2020-04-02 13:55

Branch CR31481 has been updated by abv.

SHA-1: 48609845416c2b4b8429a498121185b7d5bed2d3


Detailed log of new commits:

Author: abv
Date: Thu Apr 2 13:56:31 2020 +0300

    // add missing files

(0091601)
git (administrator)
2020-04-16 19:01

Branch CR31481 has been updated forcibly by ika.

SHA-1: f089155a022993f29b4fdbd3a8b25b89d9f41055
(0091688)
git (administrator)
2020-04-20 18:07

Branch CR31481 has been updated forcibly by ika.

SHA-1: 447a80ecb5edc2fd108b9070d57aa88c01f216a8
(0091747)
git (administrator)
2020-04-23 19:05

Branch CR31481 has been updated forcibly by ika.

SHA-1: 8a3d9d3eba4006680342a06d42924e28a4024ae4
(0091877)
git (administrator)
2020-04-29 19:27

Branch CR31481 has been updated forcibly by ika.

SHA-1: ea4ec0eda802a9a3b0489877f44c273d32fdcbed
(0091921)
git (administrator)
2020-04-30 21:29

Branch CR31481 has been updated by abv.

SHA-1: fe21a380c78295bba59c7a92c533d89f014de5f1


Detailed log of new commits:

Author: abv
Date: Thu Apr 30 21:29:57 2020 +0300

    Fix parser to avoid loosing fields after redefinition of inherited field (SELF\field = type;)

(0092067)
git (administrator)
2020-05-11 21:35

Branch CR31481 has been updated by Igor.

SHA-1: 0580c8b11a5e15778971ac4e915212e8eabdfb7d


Detailed log of new commits:

Author: Igor Khozhanov
Date: Mon May 11 21:27:50 2020 +0300

    Fixed casting pointer to int error.
    Fixed /**/ comment inside comment warnings.
    Fixed converting string constant to 'char*' warning.

(0093564)
git (administrator)
2020-08-20 15:54

Branch CR31481 has been updated forcibly by ika.

SHA-1: 9d659909bb074a370da3229f848cb5d779a7a325
(0093648)
git (administrator)
2020-08-26 18:27

Branch CR31481 has been updated forcibly by ika.

SHA-1: 260f1b2e2e7fb8b6a572b64b950fd0f48dcf81dd
(0093669)
git (administrator)
2020-08-27 14:46

Branch CR31481 has been updated forcibly by ika.

SHA-1: b307021a3da5f55b8fe52bb8d99e74d0adeba84e
(0093672)
git (administrator)
2020-08-27 19:06

Branch CR31481 has been updated forcibly by ika.

SHA-1: eb0dbd1c84f25b961ab3ad0985cac22ed61e51fe
(0093698)
git (administrator)
2020-08-28 15:38

Branch CR31481 has been updated forcibly by ika.

SHA-1: 1f02cd5f2139446df96b07cae5cdd9018e638278
(0093699)
git (administrator)
2020-08-28 15:58

Branch CR31481_1 has been created by ika.

SHA-1: 98831117a4bf4dd66dc2efbaed0734f8fb4567fc


Detailed log of new commits:

Author: abv
Date: Thu Apr 2 01:21:08 2020 +0300

    0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
    
    Integration of ExpToCas tool ported to modern state of OCCT:
    - new package Express and toolkit TKExpress for EXPRESS data structures and OCCT class generator
    - executable ExpToCasExe including lax/yacc parsers, for parsing a Part 21 file and generating classes
    
    Off-topic: genproj.tcl is improved to
    - deal correctly with FILES files containing CRLF end-of-lines
    - generate one project per executable unit (instead of one project per cxx file); note that this matches behaviour of CMake generator
(0093700)
ika (developer)
2020-08-28 16:00

Dear ABV,

could you please review the CR31481_1 branch?
(0094166)
kgv (developer)
2020-09-06 11:59

It would be nice formatting added files following OCCT Coding Rules / cleaning up code from redundant empty lines.

+  std::ofstream os ( pack.Cat ( ".hxx" ).ToCString() );

Shouldn't it be OSD_OpenStream()?

+++ b/src/TKExpress/EXTERNLIB
@@ -0,0 +1,2 @@
+TKernel
+CSF_TBB

CSF_TBB is really necessary for this toolkit?
(0097016)
abv (manager)
2020-11-23 21:58

This patch shall be updated before integration:
- rebase on master
- regenerate flex scanner and bison parser using relevant CMake option (see 0031740 and 0027342), version to be used is win_flex_bison 2.5.23 (flex 2.6.4, bison 3.7.1), available in \\master\projects\occt-3rdparty\occt700products\win_flex_bison-2.5.23
- revise executables in ExpToCasExe: ones which are useful shall be preserved and documented, others better be removed
- revise scripts and resource files in ExpToCasExe to keep only ones that are useful. Note that we definitely need to have resource file describing distribution of STEP entities by packages in OCCT.
- It should be checked where we can keep files with STEP Express schemas (they are probably copyrighted and may not be distributed).
(0097108)
git (administrator)
2020-11-27 13:50

Branch CR31481_1 has been updated forcibly by skl.

SHA-1: 4854f142ab0d3a2daedf1ade762ceda02bd5a1b1
(0097153)
git (administrator)
2020-11-30 11:35

Branch CR31481_1 has been updated by skl.

SHA-1: 9b1dc148be73cae6982dadc829581bc71f93e18b


Detailed log of new commits:

Author: skl
Date: Mon Nov 30 11:35:00 2020 +0300

    0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
    
    Changes for correspondence generated files to OCCT Code Rules.

(0097154)
git (administrator)
2020-11-30 11:36

Branch CR31481_1 has been updated forcibly by skl.

SHA-1: 47d03fa5ebe82706506ecc76926e9443aa43f6e5
(0097172)
git (administrator)
2020-11-30 15:33

Branch CR31481_1 has been updated by skl.

SHA-1: 7bc54d2e4eb535ada5b91eddf26380aadecbb1e2


Detailed log of new commits:

Author: skl
Date: Mon Nov 30 15:32:29 2020 +0300

    0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
    
    Next part of formatting added files following OCCT Coding Rules.

(0097192)
git (administrator)
2020-12-01 11:41

Branch CR31481_1 has been updated by skl.

SHA-1: 423a0239983e67b20743753326d8787f73fd5aa1


Detailed log of new commits:

Author: skl
Date: Tue Dec 1 11:40:51 2020 +0300

    0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
    
    Next changes for correspondence generated files to OCCT Code Rules.

(0097232)
git (administrator)
2020-12-02 10:36

Branch CR31481_1 has been updated by skl.

SHA-1: 44bb1c31502142599ecd1b88d37660671bbf2181


Detailed log of new commits:

Author: skl
Date: Wed Dec 2 10:36:38 2020 +0300

    0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
    
    Add generation hxx files with declaration of arrays.
    If field is a HArray1 method for get length of array and method for get element of array by its index are generated.

(0097407)
git (administrator)
2020-12-07 12:15

Branch CR31481_1 has been updated forcibly by skl.

SHA-1: cdb5b7e24e24d5f7f2d98ab28b01603fdb7508f4
(0097467)
git (administrator)
2020-12-10 15:18

Branch CR31481_1 has been updated by skl.

SHA-1: 0654738fd9c700da1309b21171547503b1aadeb4


Detailed log of new commits:

Author: skl
Date: Mon Dec 7 12:54:59 2020 +0300

    0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
    
    Changes for Lex and YACC.

(0097890)
git (administrator)
2020-12-24 16:24

Branch CR31481_2 has been created by skl.

SHA-1: 16accbc55984196c5a141854132776d2c0dbc6ca


Detailed log of new commits:

Author: abv
Date: Thu Apr 2 01:21:08 2020 +0300

    0031481: Data Exchange - provide parser of STEP EXPRESS schema for generation of new STEP entities
    
    Integration of ExpToCas tool ported to modern state of OCCT:
    - new package Express and toolkit TKExpress for EXPRESS data structures and OCCT class generator
    - executable ExpToCasExe including lax/yacc parsers, for parsing a Part 21 file and generating classes
    
    Off-topic: genproj.tcl is improved to
    - deal correctly with FILES files containing CRLF end-of-lines
    - generate one project per executable unit (instead of one project per cxx file); note that this matches behaviour of CMake generator
    
    Formatting added files from package Express following OCCT Coding Rules
    
    Changes for correspondence generated files to OCCT Code Rules.
    
    Add generation hxx files with declaration of arrays.
    If field is a HArray1 method for get length of array and method for get element of array by its index are generated.
    
    Changes for generation parser from Lex and YACC files.
    
    Update description file readme.txt
(0097957)
git (administrator)
2020-12-28 10:24

Branch CR31481_2 has been updated forcibly by skl.

SHA-1: d7397c85995845d12a4aae5817b295377475e8e8
(0097966)
git (administrator)
2020-12-29 06:28

Branch CR31481_2 has been updated forcibly by skl.

SHA-1: 64427e8767282aa349860a4dda62204010eeb98b
(0097968)
git (administrator)
2020-12-29 08:34

Branch CR31481_2 has been updated forcibly by skl.

SHA-1: 4421e59911a47f6bb1c5f8af9b8c45fafda19efa
(0097970)
git (administrator)
2020-12-29 09:38

Branch CR31481_2 has been updated forcibly by skl.

SHA-1: e738f18c5fa7a3cbe5629f96214a4ea080afe806
(0097971)
git (administrator)
2020-12-29 10:53

Branch CR31481_2 has been updated forcibly by skl.

SHA-1: efa4abef164854998bb51e033e1db33287c71c31
(0097972)
git (administrator)
2020-12-29 11:28

Branch CR31481_2 has been updated forcibly by skl.

SHA-1: f90dec7ff382db9f78d4202fe76bc08959fcff5b
(0097996)
git (administrator)
2020-12-31 11:16

Branch CR31481_2 has been updated forcibly by skl.

SHA-1: 2ae91a436f657c3f32c7d4f0e901cd34e3ab17d2
(0098001)
skl (developer)
2020-12-31 16:25

lex and yacc files are updated.


- Issue History
Date Modified Username Field Change
2020-04-02 01:16 abv New Issue
2020-04-02 01:16 abv Assigned To => gka
2020-04-02 01:20 git Note Added: 0091399
2020-04-02 01:21 abv Assigned To gka => ika
2020-04-02 01:22 abv Note Added: 0091400
2020-04-02 09:44 git Note Added: 0091402
2020-04-02 13:55 git Note Added: 0091412
2020-04-16 19:01 git Note Added: 0091601
2020-04-20 18:07 git Note Added: 0091688
2020-04-23 19:05 git Note Added: 0091747
2020-04-29 19:27 git Note Added: 0091877
2020-04-30 21:29 git Note Added: 0091921
2020-05-11 21:35 git Note Added: 0092067
2020-08-20 15:54 git Note Added: 0093564
2020-08-26 18:27 git Note Added: 0093648
2020-08-27 14:46 git Note Added: 0093669
2020-08-27 19:06 git Note Added: 0093672
2020-08-28 15:38 git Note Added: 0093698
2020-08-28 15:58 git Note Added: 0093699
2020-08-28 16:00 ika Note Added: 0093700
2020-08-28 16:00 ika Assigned To ika => abv
2020-08-28 16:00 ika Status new => resolved
2020-08-28 16:00 ika Steps to Reproduce Updated View Revisions
2020-09-06 11:59 kgv Note Added: 0094166
2020-09-10 15:04 abv Relationship added has duplicate 0029903
2020-09-13 08:22 abv Relationship added related to 0031740
2020-09-24 16:15 abv Target Version 7.5.0 => 7.6.0*
2020-10-05 10:16 abv Relationship added related to 0031388
2020-11-23 21:58 abv Note Added: 0097016
2020-11-23 21:58 abv Assigned To abv => skl
2020-11-23 21:58 abv Status resolved => assigned
2020-11-27 13:50 git Note Added: 0097108
2020-11-30 11:35 git Note Added: 0097153
2020-11-30 11:36 git Note Added: 0097154
2020-11-30 15:33 git Note Added: 0097172
2020-12-01 11:41 git Note Added: 0097192
2020-12-02 10:36 git Note Added: 0097232
2020-12-07 12:15 git Note Added: 0097407
2020-12-10 15:18 git Note Added: 0097467
2020-12-24 16:24 git Note Added: 0097890
2020-12-28 10:24 git Note Added: 0097957
2020-12-29 06:28 git Note Added: 0097966
2020-12-29 08:34 git Note Added: 0097968
2020-12-29 09:38 git Note Added: 0097970
2020-12-29 10:53 git Note Added: 0097971
2020-12-29 11:28 git Note Added: 0097972
2020-12-31 11:16 git Note Added: 0097996
2020-12-31 16:25 skl Note Added: 0098001
2020-12-31 16:25 skl Assigned To skl => abv
2020-12-31 16:25 skl Status assigned => resolved


Copyright © 2000 - 2021 MantisBT Team
Powered by Mantis Bugtracker