diff --git a/src/ifcparse/IfcFile.h b/src/ifcparse/IfcFile.h index e2b3f230b1..8740824d9e 100644 --- a/src/ifcparse/IfcFile.h +++ b/src/ifcparse/IfcFile.h @@ -167,6 +167,9 @@ public: /// IfcWall will also return IfcWallStandardCase entities IfcEntityList::ptr instances_by_type(const std::string& t); + /// Returns all entities in the file that match the positional argument. + IfcEntityList::ptr instances_by_type_excl_subtypes(const std::string& t); + /// Returns all entities in the file that reference the id IfcEntityList::ptr instances_by_reference(int id); diff --git a/src/ifcparse/IfcParse.cpp b/src/ifcparse/IfcParse.cpp index e33bf1f14d..c0f8a28839 100644 --- a/src/ifcparse/IfcParse.cpp +++ b/src/ifcparse/IfcParse.cpp @@ -1902,6 +1902,10 @@ IfcEntityList::ptr IfcFile::instances_by_type(const std::string& t) { return instances_by_type(schema()->declaration_by_name(t)); } +IfcEntityList::ptr IfcFile::instances_by_type_excl_subtypes(const std::string& t) { + return instances_by_type_excl_subtypes(schema()->declaration_by_name(t)); +} + IfcEntityList::ptr IfcFile::instances_by_reference(int t) { entities_by_ref_t::const_iterator it = byref.find(t); IfcEntityList::ptr ret;