Files
IfcOpenShell/src/ifcgeom/IfcGeomIteratorImplementation.cpp
T

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

21 lines
824 B
C++
Raw Normal View History

2017-12-19 20:24:00 +01:00
#include "IfcGeomIteratorImplementation.h"
2017-12-20 17:09:42 +01:00
#include "../ifcgeom_schema_agnostic/IteratorImplementation.h"
2017-12-19 20:24:00 +01:00
#define MAKE_INIT_FN__(a, b) init_ ## a ## b
#define MAKE_INIT_FN_(a, b) MAKE_INIT_FN__(a, b)
#define MAKE_INIT_FN(t) MAKE_INIT_FN_(t, IfcSchema)
namespace {
struct MAKE_TYPE_NAME(factory_t) {
2021-07-11 15:00:59 +02:00
IfcGeom::IteratorImplementation* operator()(const IfcGeom::IteratorSettings& settings, IfcParse::IfcFile* file, const std::vector<IfcGeom::filter_t>& filters, int num_threads) const {
return new IfcGeom::MAKE_TYPE_NAME(IteratorImplementation_)(settings, file, filters, num_threads);
2017-12-19 20:24:00 +01:00
}
};
}
2017-12-19 20:24:00 +01:00
2021-07-11 15:00:59 +02:00
void MAKE_INIT_FN(IteratorImplementation_)(IteratorFactoryImplementation* mapping) {
static const std::string schema_name = STRINGIFY(IfcSchema);
2021-07-11 15:00:59 +02:00
MAKE_TYPE_NAME(factory_t) factory;
2017-12-21 14:14:04 +01:00
mapping->bind(schema_name, factory);
}