diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index a29ddd66cc..5f88ba2f7d 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -551,7 +551,7 @@ if(NOT MSVC) endif() endif() -set(IFCOPENSHELL_LIBRARIES IfcParse IfcGeom_ifc2x3 IfcGeom_ifc4 Iterator) +set(IFCOPENSHELL_LIBRARIES IfcParse IfcGeom_ifc2x3 IfcGeom_ifc4 IfcGeom) # IfcParse file(GLOB IFCPARSE_H_FILES ../src/ifcparse/*.h) @@ -580,14 +580,14 @@ set_target_properties(IfcGeom_ifc4 PROPERTIES COMPILE_FLAGS "-DIFC_GEOM_EXPORTS TARGET_LINK_LIBRARIES(IfcGeom_ifc2x3 IfcParse ${OPENCASCADE_LIBRARIES}) TARGET_LINK_LIBRARIES(IfcGeom_ifc4 IfcParse ${OPENCASCADE_LIBRARIES}) -# Iterator -file(GLOB ITERATOR_H_FILES ../src/iterator/*.h) -file(GLOB ITERATOR_CPP_FILES ../src/iterator/*.cpp) -set(ITERATOR_FILES ${ITERATOR_H_FILES} ${ITERATOR_CPP_FILES}) +# IfcGeom (schema agnostic) +file(GLOB SCHEMA_AGNOSTIC_H_FILES ../src/ifcgeom_schema_agnostic/*.h) +file(GLOB SCHEMA_AGNOSTIC_CPP_FILES ../src/ifcgeom_schema_agnostic/*.cpp) +set(SCHEMA_AGNOSTIC_FILES ${SCHEMA_AGNOSTIC_H_FILES} ${SCHEMA_AGNOSTIC_CPP_FILES}) -add_library(Iterator ${ITERATOR_FILES}) -set_target_properties(Iterator PROPERTIES COMPILE_FLAGS -DIFC_GEOM_EXPORTS) -TARGET_LINK_LIBRARIES(Iterator IfcGeom_ifc2x3 IfcGeom_ifc4) +add_library(IfcGeom ${SCHEMA_AGNOSTIC_FILES}) +set_target_properties(IfcGeom PROPERTIES COMPILE_FLAGS -DIFC_GEOM_EXPORTS) +TARGET_LINK_LIBRARIES(IfcGeom IfcGeom_ifc2x3 IfcGeom_ifc4) # IfcConvert file(GLOB IFCCONVERT_CPP_FILES ../src/ifcconvert/*.cpp) diff --git a/src/ifcconvert/ColladaSerializer.h b/src/ifcconvert/ColladaSerializer.h index e3940c5f24..e64fe39615 100644 --- a/src/ifcconvert/ColladaSerializer.h +++ b/src/ifcconvert/ColladaSerializer.h @@ -41,7 +41,7 @@ #pragma GCC diagnostic pop #endif -#include "../iterator/IfcGeomIterator.h" +#include "../ifcgeom_schema_agnostic/IfcGeomIterator.h" #include "../ifcconvert/GeometrySerializer.h" diff --git a/src/ifcconvert/GeometrySerializer.h b/src/ifcconvert/GeometrySerializer.h index 688c58243a..f479a81c82 100644 --- a/src/ifcconvert/GeometrySerializer.h +++ b/src/ifcconvert/GeometrySerializer.h @@ -27,7 +27,7 @@ typedef float real_t; #endif #include "../ifcconvert/Serializer.h" -#include "../iterator/IfcGeomIterator.h" +#include "../ifcgeom_schema_agnostic/IfcGeomIterator.h" #include "../ifcgeom/IfcGeomElement.h" class SerializerSettings : public IfcGeom::IteratorSettings diff --git a/src/ifcconvert/IfcConvert.cpp b/src/ifcconvert/IfcConvert.cpp index 88e3e74bb1..e66c6dce06 100644 --- a/src/ifcconvert/IfcConvert.cpp +++ b/src/ifcconvert/IfcConvert.cpp @@ -32,7 +32,7 @@ #include "../ifcconvert/WavefrontObjSerializer.h" #include "../ifcconvert/SvgSerializer.h" -#include "../iterator/IfcGeomIterator.h" +#include "../ifcgeom_schema_agnostic/IfcGeomIterator.h" #include #include diff --git a/src/ifcconvert/OpenCascadeBasedSerializer.h b/src/ifcconvert/OpenCascadeBasedSerializer.h index 523b99e2e4..52284eb079 100644 --- a/src/ifcconvert/OpenCascadeBasedSerializer.h +++ b/src/ifcconvert/OpenCascadeBasedSerializer.h @@ -20,7 +20,7 @@ #ifndef OPENCASCADEBASEDSERIALIZER_H #define OPENCASCADEBASEDSERIALIZER_H -#include "../iterator/IfcGeomIterator.h" +#include "../ifcgeom_schema_agnostic/IfcGeomIterator.h" #include "../ifcconvert/GeometrySerializer.h" diff --git a/src/ifcconvert/StepSerializer.h b/src/ifcconvert/StepSerializer.h index 622c8fcb67..eead944930 100644 --- a/src/ifcconvert/StepSerializer.h +++ b/src/ifcconvert/StepSerializer.h @@ -23,7 +23,7 @@ #include #include -#include "../iterator/IfcGeomIterator.h" +#include "../ifcgeom_schema_agnostic/IfcGeomIterator.h" #include "../ifcconvert/OpenCascadeBasedSerializer.h" diff --git a/src/ifcconvert/WavefrontObjSerializer.cpp b/src/ifcconvert/WavefrontObjSerializer.cpp index 259030f496..b46d645bb0 100644 --- a/src/ifcconvert/WavefrontObjSerializer.cpp +++ b/src/ifcconvert/WavefrontObjSerializer.cpp @@ -20,7 +20,7 @@ #include "WavefrontObjSerializer.h" -#include "../iterator/IfcGeomRenderStyles.h" +#include "../ifcgeom_schema_agnostic/IfcGeomRenderStyles.h" #include #include diff --git a/src/ifcgeom/IfcGeom.h b/src/ifcgeom/IfcGeom.h index 84eead4cba..8e832ab0ed 100644 --- a/src/ifcgeom/IfcGeom.h +++ b/src/ifcgeom/IfcGeom.h @@ -54,7 +54,7 @@ inline static bool ALMOST_THE_SAME(const T& a, const T& b, double tolerance=ALMO #include "../ifcgeom/IfcRepresentationShapeItem.h" #include "../ifcgeom/IfcGeomShapeType.h" -#include "../iterator/Kernel.h" +#include "../ifcgeom_schema_agnostic/Kernel.h" #include "ifc_geom_api.h" diff --git a/src/ifcgeom/IfcGeomIteratorImplementation.cpp b/src/ifcgeom/IfcGeomIteratorImplementation.cpp index 77e9b6718e..aae669a320 100644 --- a/src/ifcgeom/IfcGeomIteratorImplementation.cpp +++ b/src/ifcgeom/IfcGeomIteratorImplementation.cpp @@ -1,5 +1,5 @@ #include "IfcGeomIteratorImplementation.h" -#include "../iterator/IteratorImplementation.h" +#include "../ifcgeom_schema_agnostic/IteratorImplementation.h" namespace IfcGeom { template class MAKE_TYPE_NAME(IteratorImplementation_); diff --git a/src/ifcgeom/IfcGeomIteratorImplementation.h b/src/ifcgeom/IfcGeomIteratorImplementation.h index 76340c1f14..b13c7b0782 100644 --- a/src/ifcgeom/IfcGeomIteratorImplementation.h +++ b/src/ifcgeom/IfcGeomIteratorImplementation.h @@ -77,12 +77,12 @@ #include "../ifcgeom/IfcGeom.h" #include "../ifcgeom/IfcGeomElement.h" -#include "../iterator/IfcGeomMaterial.h" +#include "../ifcgeom_schema_agnostic/IfcGeomMaterial.h" #include "../ifcgeom/IfcGeomIteratorSettings.h" #include "../ifcgeom/IfcRepresentationShapeItem.h" #include "../ifcgeom/IfcGeomFilter.h" -#include "../iterator/IteratorImplementation.h" +#include "../ifcgeom_schema_agnostic/IteratorImplementation.h" // The infamous min & max Win32 #defines can leak here from OCE depending on the build configuration #ifdef min diff --git a/src/ifcgeom/IfcGeomRepresentation.h b/src/ifcgeom/IfcGeomRepresentation.h index eadd03b2c5..84a025d057 100644 --- a/src/ifcgeom/IfcGeomRepresentation.h +++ b/src/ifcgeom/IfcGeomRepresentation.h @@ -35,7 +35,7 @@ #include #include "../ifcgeom/IfcGeomIteratorSettings.h" -#include "../iterator/IfcGeomMaterial.h" +#include "../ifcgeom_schema_agnostic/IfcGeomMaterial.h" #include "../ifcgeom/IfcRepresentationShapeItem.h" #include diff --git a/src/ifcgeom/IfcRepresentationShapeItem.h b/src/ifcgeom/IfcRepresentationShapeItem.h index 204f30a516..a7885688ca 100644 --- a/src/ifcgeom/IfcRepresentationShapeItem.h +++ b/src/ifcgeom/IfcRepresentationShapeItem.h @@ -23,7 +23,7 @@ #include #include -#include "../iterator/IfcGeomRenderStyles.h" +#include "../ifcgeom_schema_agnostic/IfcGeomRenderStyles.h" namespace IfcGeom { class IFC_GEOM_API IfcRepresentationShapeItem { diff --git a/src/iterator/IfcGeomIterator.h b/src/ifcgeom_schema_agnostic/IfcGeomIterator.h similarity index 98% rename from src/iterator/IfcGeomIterator.h rename to src/ifcgeom_schema_agnostic/IfcGeomIterator.h index bc4ee0a880..b4b5c3bc7f 100644 --- a/src/iterator/IfcGeomIterator.h +++ b/src/ifcgeom_schema_agnostic/IfcGeomIterator.h @@ -58,7 +58,7 @@ #ifndef IFCGEOMITERATOR_H #define IFCGEOMITERATOR_H -#include "../iterator/IteratorImplementation.h" +#include "../ifcgeom_schema_agnostic/IteratorImplementation.h" // The infamous min & max Win32 #defines can leak here from OCE depending on the build configuration #ifdef min diff --git a/src/iterator/IfcGeomMaterial.cpp b/src/ifcgeom_schema_agnostic/IfcGeomMaterial.cpp similarity index 100% rename from src/iterator/IfcGeomMaterial.cpp rename to src/ifcgeom_schema_agnostic/IfcGeomMaterial.cpp diff --git a/src/iterator/IfcGeomMaterial.h b/src/ifcgeom_schema_agnostic/IfcGeomMaterial.h similarity index 97% rename from src/iterator/IfcGeomMaterial.h rename to src/ifcgeom_schema_agnostic/IfcGeomMaterial.h index e7892c3bf2..8614ae20d3 100644 --- a/src/iterator/IfcGeomMaterial.h +++ b/src/ifcgeom_schema_agnostic/IfcGeomMaterial.h @@ -22,7 +22,7 @@ #include -#include "../iterator/IfcGeomRenderStyles.h" +#include "../ifcgeom_schema_agnostic/IfcGeomRenderStyles.h" namespace IfcGeom { diff --git a/src/iterator/IfcGeomRenderStyles.h b/src/ifcgeom_schema_agnostic/IfcGeomRenderStyles.h similarity index 100% rename from src/iterator/IfcGeomRenderStyles.h rename to src/ifcgeom_schema_agnostic/IfcGeomRenderStyles.h diff --git a/src/iterator/IteratorImplementation.cpp b/src/ifcgeom_schema_agnostic/IteratorImplementation.cpp similarity index 100% rename from src/iterator/IteratorImplementation.cpp rename to src/ifcgeom_schema_agnostic/IteratorImplementation.cpp diff --git a/src/iterator/IteratorImplementation.h b/src/ifcgeom_schema_agnostic/IteratorImplementation.h similarity index 100% rename from src/iterator/IteratorImplementation.h rename to src/ifcgeom_schema_agnostic/IteratorImplementation.h diff --git a/src/iterator/Kernel.h b/src/ifcgeom_schema_agnostic/Kernel.h similarity index 100% rename from src/iterator/Kernel.h rename to src/ifcgeom_schema_agnostic/Kernel.h diff --git a/src/iterator/SurfaceStyle.cpp b/src/ifcgeom_schema_agnostic/SurfaceStyle.cpp similarity index 98% rename from src/iterator/SurfaceStyle.cpp rename to src/ifcgeom_schema_agnostic/SurfaceStyle.cpp index 33ad4b0339..e59f30e575 100644 --- a/src/iterator/SurfaceStyle.cpp +++ b/src/ifcgeom_schema_agnostic/SurfaceStyle.cpp @@ -1,4 +1,4 @@ -#include "../iterator/IfcGeomRenderStyles.h" +#include "../ifcgeom_schema_agnostic/IfcGeomRenderStyles.h" #include