Commit Graph

79 Commits

Author SHA1 Message Date
Thomas Krijnen bc2ce0ee62 Update express parser to retain AST parse tree 2020-08-29 10:23:59 +02:00
Thomas Krijnen 628f9a2879 Iteration of inverse attribute list 2020-08-23 13:54:23 +02:00
Thomas Krijnen 64c0679a7e FIx code generation import for schema_class 2020-05-15 14:28:56 +02:00
Thomas Krijnen 2ee0cda83e delitem in ifc express parser schema 2020-04-24 13:56:28 +02:00
Thomas Krijnen 186da7ce8b Better formatting in IFC express parser 2020-04-24 13:56:06 +02:00
Thomas Krijnen 481c6165ca Parametrize code generation actions from the command line 2020-03-17 11:55:28 +01:00
Thomas Krijnen 56e3353879 Add inverse attribute availability to schema definition macros 2020-02-10 16:36:38 +01:00
Thomas Krijnen 839b5a2699 Minor cleanups, 4x1 and 4x2 geom lib, granular schema macros 2019-06-26 13:50:46 +02:00
Andrej Tibaut d371f1a6be UnicodeDecodeError problem solved (#630)
* UnicodeDecodeError problem solved

UnicodeDecodeError problem described in #626 solved.

* UnicodeDecodeError solved (2)

UnicodeDecodeError problem described in #626 changed (fname replaced with fn) and solved.
2019-06-21 11:43:53 +02:00
Thomas Krijnen dbc3c5ebef Mark abstract entities in latebound schema 2019-02-20 15:35:19 +01:00
Thomas Krijnen d583bf5284 Populate entity subtypes, get schema info in Python 2019-02-15 13:09:54 +01:00
Thomas Krijnen 6a5bfefce9 Merge branch 'master' into v0.6.0
# Conflicts:
#	src/ifcparse/Ifc4-latebound.cpp
#	src/ifcparse/Ifc4.cpp
#	src/ifcparse/Ifc4.h
#	src/ifcparse/Ifc4enum.h
2019-01-20 14:27:09 +01:00
Thomas Krijnen e24ddae064 Forgot to update code generator 2018-09-21 14:55:10 +02:00
Thomas Krijnen ef97ea0593 Properly toposort type decl instantiation 2018-01-29 15:03:12 +01:00
Thomas Krijnen aeabe87779 Disable optimization for schema instantiation on gcc as well 2017-12-29 12:21:20 +01:00
Thomas Krijnen 5e23086947 Sprinkle with template and typename keywords 2017-12-22 16:45:02 +01:00
Thomas Krijnen 472fde5599 Fixes 2017-12-22 15:19:09 +01:00
Thomas Krijnen 4d325e026e Fix compilation and execution of IfcConvert 2017-12-21 14:14:04 +01:00
Thomas Krijnen 8b4650b169 Fix compilation on msvc 2017-12-20 16:38:55 +01:00
Thomas Krijnen a792a7e2c7 Two simultaneous IfcGeom implementations 2017-12-18 15:25:09 +01:00
Thomas Krijnen 5eba7af791 Use struct instead of namespace to represent schema 2017-12-13 18:05:10 +01:00
Thomas Krijnen 85515e904e Begin phasing out type enumeration in favour of declaration pointers 2017-12-13 13:16:49 +01:00
Thomas Krijnen 33fc2080df Runtime schema by name 2017-12-12 11:00:42 +01:00
Thomas Krijnen e7ccf7269a Remove limited latebound schema representation in favour of full runtime schema representation 2017-12-11 15:46:57 +01:00
Thomas Krijnen 988094b796 Resolving merge conflicts 2017-12-11 14:20:30 +01:00
Thomas Krijnen 3763ae18b2 Rough merge of schema runtime representation 2017-12-11 13:43:06 +01:00
youaresoomean b90b39a894 Update templates.py 2017-09-08 17:17:50 +02:00
Thomas Krijnen 490c35bf60 Fix #244 and provide instances by entity type without subtypes 2017-08-16 21:46:39 +02:00
Thomas Krijnen c67de4bbb3 Mark attributes as 'derived in supertype' also in getArgumentType() 2017-08-04 16:29:26 +02:00
Thomas Krijnen 69c8b7c1c8 One more boost::blank() refactoring 2017-06-20 18:52:56 +02:00
Thomas Krijnen 5e0da9725a ifcparse refactoring (#190)
Unify attribute containers, provide latebound attribute access on IfcBaseEntity, more basic tests on Travis
2017-06-05 17:26:58 +02:00
Thomas Krijnen 51409aff8f Fix #87 2016-12-09 16:33:06 +01:00
Thomas Krijnen f1099fc3b1 Merge branch 'master' into tridify_ifcgeom_dll
# Conflicts:
#	cmake/CMakeLists.txt
2016-08-08 10:56:06 +02:00
Stinkfist0 6d6e7c2982 Unify IfcParse's dllimport/export macros with IfcGeom. 2016-07-20 22:49:32 +03:00
Ali Kämäräinen 4a85e5e7a5 MSYS build scripts and instructions (#99) and warning fixes
* Preliminary MSYS2 + MinGW build scripts and instructions.

* CMakeLists.txt: MinGW tweaks, enforce C++03, suppress warnings for now.

* Fix some GCC warnings.

* Fix unused parameter warnings coming from Ifc*.h.

* Fix warning regarding unreachable code (++jt) on MSVC.

* Add IfcParse_EXPORT for IfcInvalidTokenException

* Fix potentially uninitialized pointer variables.

* Note about OpenCASCADE cyclic dependencies fix.

* GCC warning fix: don't generate 'current_enum' variable that is only set and not used for anything ever

* Work around -Wmaybe-uninitialized warnings about boost::optional constructs. Also prevent passing of negative values for --bounds.

* Remove unused variable.

* CMakeLists.txt: ENABLE_BUILD_OPTIMIZATIONS for GCC (simply enforce -03)
2016-07-15 05:49:32 +02:00
Stinkfist0 90a2c445ea Fix broken build of the project when BUILD_SHARED_LIBS=1 2016-05-30 13:54:24 +03:00
stgatilov b5c4eb3b6f IfcParse dynamic linking, IFCPARSE_NO_REGEX, fixes for three memory leaks (#76)
* CMake: moved setting link directories before all the projects.

* Added IfcParse_Export header for declaring export macro.

* Added IFCPARSE_STATIC_DEFINE macro to all projects.

* Added include for export macro to swig file.

* Added IfcParse_EXPORT macro for all classes in headers generated by express parser.

* Allow removing boost.regex dependency by defining macro IFCPARSE_NO_REGEX.

* Fixed bug in deletion of ICU converter.

* Added export macro to most of the classes across headers

* Fixed memory leak: delete nested IfcAbstractEntity in EntityArgument.

* Fixed memory leak in destructor of IfcWritableEntity (args values).
2016-05-29 14:12:57 +02:00
Thomas Krijnen c6d5adfa42 Merge branch 'master' into performance_improvements
# Conflicts:
#	src/ifcexpressparser/implementation.py
#	src/ifcgeom/IfcGeomFunctions.cpp
#	src/ifcparse/Ifc4.cpp
2016-04-24 15:22:10 +02:00
Thomas Krijnen 191c029546 Correctly allow rule labels to be optional 2016-04-09 13:29:35 +02:00
Thomas Krijnen fa585e60ee Update EXPRESS code generator to work on ancient IFC schemas 2016-04-08 23:23:45 +02:00
Thomas Krijnen 0ff9de3cd9 Update EXPRESS code generator to work on ancient IFC schemas 2016-04-08 23:23:29 +02:00
Thomas Krijnen 74e495cec0 python2.7 compatibility on code generator 2016-03-18 11:17:26 +01:00
Thomas Krijnen 0ceef8fe67 Use constant time parent enumeration lookup 2016-03-18 11:14:14 +01:00
aothms da0af77570 Compatibility for older versions of cmake, python, open cascade, boost 2016-02-18 13:17:15 +01:00
aothms 4122759f1a Add option to compile (external) schema by cmake 2016-02-15 16:59:47 +01:00
Stinkfist0 16a82f035f templates.py: disable C4100 warnings for headers created by this file + move <map> inclusion to .cpp as it's not needed in .h + use spaces instead of tabs consistently for these files as seems to be the convention. 2015-11-22 02:26:28 +02:00
aothms d076fa588b Work on runtime representation of schema 2015-11-05 11:55:19 +01:00
Thomas Krijnen 23beb5691c Detect abstract entities in schema parser 2015-09-17 10:33:19 +02:00
aothms 9096895bdb Support for schemas using TYPE definitions to redeclare BINARY types 2015-09-08 15:27:05 +02:00
aothms 822fa91f4d Work on a C++ representation of the parsed EXPRESS schema 2015-08-13 14:28:50 +02:00