Commit Graph

49 Commits

Author SHA1 Message Date
Bruno Postle bd264f1d85 Add missing standard library includes for self-sufficient headers
Fixes builds with newer GCC/libstdc++ that no longer provide <cstdint>,
<cstring>, <cfloat>, <memory>, <algorithm> etc. transitively. Also
disambiguates visit<> calls in taxonomy.h with the full namespace and
casts the character value in IfcCharacterDecoder to uint32_t to silence
ambiguous overload warnings.
2026-06-05 08:54:27 +02:00
Thomas Krijnen e7db239647 inverse access in schema 2026-04-10 21:46:39 +02:00
Thomas Krijnen 3fbf01f446 partial revert of 24acfea 2026-04-08 13:48:23 +02:00
Thomas Krijnen 24acfeaf45 Thinking indicator under chat 2026-04-03 10:59:09 +02:00
Andrej730 2a2efefac3 IfcSchema declaration_by_name to be safe
Couldn't find if we actually use it anywhere in the code but better to keep it safe, especially because it's exposed to Python and by accident user might provide some too bit integer instead of a string.
2024-09-17 16:28:02 +05:00
Andrej730 11ddcb0256 IfcSchema declaration_by_name to use size_t instead of int
By accident noticed that `declaration_by_name(-1)` crashes python. If we use size_t it will just throw an error like below

NotImplementedError: Wrong number or type of arguments for overloaded function 'schema_definition_declaration_by_name'.
  Possible C/C++ prototypes are:
    IfcParse::schema_definition::declaration_by_name(std::string const &) const
    IfcParse::schema_definition::declaration_by_name(size_t) const
2024-09-16 18:54:13 +05: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 616a96972a clang-format: align license blocks
- split up some very long lines
2023-10-12 12:39:16 +02:00
Dirk Olbrich 63177a7c35 clang-format: format test 2023-10-12 12:39:16 +02:00
Thomas Krijnen d7951668e9 Case sensitivity on entity str comparison from cmd line https://sourceforge.net/p/ifcopenshell/discussion/1782717/thread/2bf3324a7f 2023-09-14 09:21:12 +02:00
Thomas Krijnen 96fbe9e5b6 String pooling and reducing duplication in schema codegen 2023-03-27 14:04:32 +02:00
Thomas Krijnen f5398c77d5 Clarify invalid entity message 2022-10-03 14:02:28 +02:00
Thomas Krijnen 4c854fbb62 Try to do less allocation during parse, favour upper case entity names in spf 2022-06-06 09:59:32 +02:00
Adrien SCHVALBERG e677355438 Add IfcParse::clear_schemas() and individual Ifc___::clear_schema() to clear any resource allocated by registered schemas
Add missing virtual destructors in IfcSchema.h
2022-05-08 10:21:46 +02:00
Thomas Krijnen 68baa416fa #2037 option to throw on invalid cast 2022-02-10 13:05:05 +01:00
Thomas Krijnen c52f851d79 #1807 method mapping proposal 2021-12-14 09:57:31 +01:00
Thomas Krijnen b9084ad0f5 #1725 exports 2021-09-08 10:14:30 +02:00
Carmen Fan 529b3a9867 add necessary export definitions , add IFCParse as a dependency to IfcGeom build 2021-07-01 20:42:45 +02:00
Thomas Krijnen 95a29dec7b cpp changes for latebound schema manipulation from Python 2020-09-08 14:37:50 +02:00
kukalaka eba631d245 Add missing IFC_PARSE_API 2020-05-20 16:15:08 +02:00
stephassoria afaa34ffc2 IfcOpenShell v0.6.0 as subrepo 2019-11-26 10:09:16 +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 636b2aafdf 1) Added support for IFC4x1 (see issue https://github.com/IfcOpenShell/IfcOpenShell/issues/504#issuecomment-505051675).
2) New build parameters (flags) introduced for use of IFC4x1 and IFC4x2: USE_IFC4X2 (for use of IfcBridge), USE_IFC4X1 (for use of IfcAlignment)

This explains new parameters (flags):
#ifdef USE_IFC4X2
#include "../ifcparse/Ifc4x2enum.h"
#elif USE_IFC4X1
#include "../ifcparse/Ifc4x1enum.h"
#elif USE_IFC4
#include "../ifcparse/Ifc4enum.h"
#else
#include "../ifcparse/Ifc2x3enum.h"
#endif

3) Added comment block  "This file is part of IfcOpenShell. ..." at the beggining of the Ifc4x2* files.
2019-06-26 12:44:26 +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 e2f79ec1ba Work on python wrapper 2017-12-31 12:20:13 +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 b3458c872f Work on python wrapper 2017-12-22 13:51:11 +01:00
Thomas Krijnen 4d325e026e Fix compilation and execution of IfcConvert 2017-12-21 14:14:04 +01:00
Thomas Krijnen 761e9d7248 Continuing. 2017-12-13 13:58:58 +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 33e1fa6a14 Update python wrapper 2017-12-11 17:20:22 +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
aothms d076fa588b Work on runtime representation of schema 2015-11-05 11:55:19 +01:00
aothms 822fa91f4d Work on a C++ representation of the parsed EXPRESS schema 2015-08-13 14:28:50 +02:00
Thomas Krijnen b17832e659 Remove unneeded file 2011-09-03 10:38:04 +00:00
Thomas Krijnen 75c26a34e1 Patch by Antti Risteli (andepoikka)
Compile problems on gcc ubuntu-4.4.3 + misc
2011-07-22 08:24:00 +00:00
Thomas Krijnen 8767f6e52a IfcBlender: updated to Blender 2.58 (Patch by Yorik van Havre)
IfcParse: lazy loading of entities
IfcGeom: caching of binary entities
2011-07-11 09:33:18 +00:00
Thomas Krijnen 1040a5ef6e - Parsing: make argument out of range errors catchable
- Geometry: support for IfcLine
- Geometry: more correct initialization of placements
2011-06-17 13:07:06 +00:00
Thomas Krijnen a7ed78c4a8 - Parsing: support for comments
- Geometry: support for some complex filleted profiles ( e.g. IfcIShapeProfileDef, IfcCShapeProfileDef )
2011-06-13 12:28:38 +00:00
Thomas Krijnen 93d7b8fba9 - Parsing: support for nested types
- Parsing: some support for units
- Geometry: IfcCircleProfileDef, IfcCircleHollowProfileDef, IfcCompositeCurve, IfcTrimmedCurve, IfcCircle, IfcEllipse
2011-06-13 07:23:09 +00:00
Thomas Krijnen a1016d82da Initial commit 2011-05-08 11:04:32 +00:00