Thomas Krijnen
7098beb819
Work towards v1.0 data model with encapsulated weak_ptr as basis for instances
2026-01-05 21:42:01 +01:00
Thomas Krijnen
4d688170e0
Storage rework WIP
2025-10-13 20:47:43 +02:00
Thomas Krijnen
ce4407ff3c
Some successes writing and reading
2025-02-27 22:07:31 +01:00
Thomas Krijnen
da4e86a1d5
Exploration of using rocksdb as file+instance storage
2025-02-21 16:12:16 +01:00
Thomas Krijnen
352e361ea5
Check for nullptr before resolving inverses
2024-12-19 10:40:59 +01:00
Thomas Krijnen
8edbb37121
Fix latebound entity inheritance hierarchy wrt id() #5822 - not ideal, because BaseEntity.declation now returns declaration
2024-11-28 12:57:08 +01:00
Thomas Krijnen
aa9b2d7428
populate_derived() upon instance creation, don't only rely on serialization 'hack' #5364
2024-10-07 20:41:34 +02:00
Thomas Krijnen
d80bcd1a94
Unify variant storage ( #5118 )
2024-08-23 20:29:07 +02:00
Dirk Olbrich
47a2971c65
ifcparse: fix clang-tidy warning readability-identifier-length
2024-03-06 09:25:02 +01:00
Dirk Olbrich
eea9a14722
ifcparse: unify private member variables name to use trailing underscore
2024-03-06 09:25:02 +01:00
Dirk Olbrich
c29e7b32ad
ifcparse: fix clang-tidy warning readability-implicit-bool-conversion
2024-03-06 09:25:02 +01:00
Dirk Olbrich
9f40674d91
ifcparse: fix clang-tidy warning readability-else-after-return
2024-03-06 09:25:02 +01:00
Dirk Olbrich
b264408d85
ifcparse: fix clang-tidy warnung unused-includes
2024-03-06 09:25:02 +01:00
Dirk Olbrich
63177a7c35
clang-format: format test
2023-10-12 12:39:16 +02:00
Thomas Krijnen
d1fe1117be
adapt code for previous commits
2021-07-29 14:54:51 +02:00
Bernd Hahnebach
02fa8c8413
[read carefully before decide merge] !!! normalize line endings of src files ( #1268 )
...
* all source: prepare to normalize line ending
* all src: normalize line endings
2021-01-22 08:22:34 +11:00
Thomas Krijnen
a62fd01725
Move late bound inverse access to IfcBaseEntity
2020-07-11 23:24:49 +02:00
Thomas Krijnen
ac4be43170
Merge branch 'master' into v0.6.0
...
# Conflicts:
# src/ifcconvert/IfcConvert.cpp
# src/ifcgeom/IfcGeomRenderStyles.cpp
# src/ifcgeom/IfcGeomWires.cpp
# src/ifcparse/IfcLogger.cpp
# src/ifcparse/IfcLogger.h
# src/ifcparse/IfcParse.cpp
# src/ifcparse/IfcUtil.cpp
# src/serializers/ColladaSerializer.cpp
# src/serializers/schema_dependent/XmlSerializer.cpp
2019-03-08 11:40:16 +01:00
Thomas Krijnen
a4c2aa8f42
IfcConvert Windows unicode support ( #258 )
2019-02-08 15:18:55 +01:00
Thomas Krijnen
4df526f023
Merge branch 'master' into v0.6.0
2019-02-06 15:39:43 +01:00
Stinkfist0
38f7ccdc20
Optimize IfcFile::entitiesByReference() by reserving capacity for IfcEntityList in advance.
...
Around 18.4 % speed-up (avg. of first 2000 calls) when converting a somewhat large (176 MB) file to XML.
2019-02-06 13:30:33 +01:00
Thomas Krijnen
7b3d334472
Warnings and errors
2017-12-29 12:09:07 +01:00
Thomas Krijnen
8b4650b169
Fix compilation on msvc
2017-12-20 16:38:55 +01:00
Thomas Krijnen
5eba7af791
Use struct instead of namespace to represent schema
2017-12-13 18:05:10 +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
0468f12051
Address conflicts in ifcparse
2017-12-11 14:47:30 +01:00
Thomas Krijnen
3763ae18b2
Rough merge of schema runtime representation
2017-12-11 13:43:06 +01:00
Thomas Krijnen
4f31b9467a
Fix #248
2017-09-10 16:59:05 +02:00
Thomas Krijnen
e60202b738
Unique filter on IfcEntityList
2017-06-20 18:54:55 +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
e8ae491dc3
Type hint from schema when encountering empty aggregate. Fixes #127
2016-11-08 17:24:08 +01:00
stgatilov
8725c66306
Performance improvement of IfcParse tokenizer ( #82 )
...
* Applied MSVC tabify to IfcParse.cpp/h.
* Now Argument base class has throwing implementation for each conversion operator (removed those from derived classes).
* Added NullArgument class for the case when null arguments appear after setting elements.
* Now operator tokens are handled just like any other token.
* Refactoring: Token is now a struct with good fields, not a nameless pair.
* Now end position of token is set at its construction.
* Now type of token is determined on construction, as* function simply check stored type.
* Now int-s, float-s and some etc are parsed when token is created.
* Implemented simple way to remove spaces in parsing.
* Tokens are now created without allocations.
* Call RemoveTokenSeparators once for every token.
* Added temporary std::string object in lexer (for optimization purposes).
* Reimplemented asString without allocations.
* Parsing keywords without allocations.
* Added checks for type to tokenFunc::as*** functions.
2016-06-09 18:25:50 +02:00
Stinkfist0
c644ffbe5e
Move wildcard_string_to_regex() from IfcParse to IfcGeom as it's not really related to parsing IFC at all.
2016-05-31 14:04:44 +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
Ivano Ras
0253c1ddbe
Extended error logging
...
Fixes #33
2016-05-11 10:56:40 +02:00
Stinkfist0
43f5d446ec
Implement --use-names and --use-guids for DAE, OBJ, and SVG output.
2016-03-10 11:35:32 +02:00
Stinkfist0
50a467fda5
Fix IfcUtil::wildcard_string_to_regex()
2016-03-07 23:15:29 +02:00
Stinkfist0
0da0e63687
Begin to implement IfcConvert enhancements discussed in #20 . Remove C++-specific getters and setters and use the same set() and get() functions in in both C++ and Python. Enhance output of IfcConvert, especially in error situations (spamming a hundred lines of options always hides the original error message), utilize Boost's foreach macro to provide cleaner iteration code.
2016-03-07 22:37:36 +02:00
aothms
d076fa588b
Work on runtime representation of schema
2015-11-05 11:55:19 +01:00
Thomas Krijnen
48676a733f
Rework SWIG python binding not to rely on polymorhpic functions. Use hand-written typemaps that map vectors to tuples and iterables to vectors. Add support for multidimensional aggregates in Python.
2015-06-17 11:27:02 +00:00
Thomas Krijnen
1ec14118fe
Introduce specific exception for out of range attribute indexing
2015-06-17 11:04:28 +00:00
Thomas Krijnen
381f711103
Update string representation of ArgumentTypeToString
2015-06-16 14:47:03 +00:00
Thomas Krijnen
7390faa654
Adapt XML serializer for changes in IFC4 decomposition and property set types
2015-05-21 12:06:38 +00:00
Thomas Krijnen
955190b517
Add support for reading and writing BINARY attributes. Rename members of the IfcUtil::ArgumentType enumeration.
2015-04-07 15:06:56 +00:00
Thomas Krijnen
6c8a60db6e
Fixes related to r312: gcc refuses to erase a const_iterator
2015-02-17 21:24:18 +00:00
Thomas Krijnen
ee87466521
1) Implement a breadth-first traversal of forward references 2) implement entity instance deletion from a file 3) recursively copy entity instances to another file
2015-02-17 19:48:41 +00:00
Thomas Krijnen
8581fed39b
Track inverse attributes more correctly
...
Rename Size() to size() on EntityList and friends
2015-01-10 22:13:52 +00:00
Thomas Krijnen
4d5d749255
Merge developments from the python_wrapper branch into master
2015-01-05 14:11:42 +00:00
Thomas Krijnen
1b54ba039d
- Add support for IFC4 nurbs surfaces (IfcBSplineSurfaceWithKnots and IfcAdvancedFace)
...
- Remove unnecessary typedefs
2014-05-04 14:42:55 +00:00
Thomas Krijnen
17f873b486
First stab at a new express parser to have some more luck with Ifc4
2014-02-17 22:13:55 +00:00