#2704 keep track of simple types by iden to free later

This commit is contained in:
Thomas Krijnen
2023-01-28 14:19:03 +01:00
parent 2fc5c6c110
commit 2174fda88d
2 changed files with 14 additions and 2 deletions
+3
View File
@@ -74,6 +74,7 @@ class IFC_PARSE_API IfcFile {
public:
typedef std::map<const IfcParse::declaration*, aggregate_of_instance::ptr> entities_by_type_t;
typedef boost::unordered_map<unsigned int, IfcUtil::IfcBaseClass*> entity_by_id_t;
typedef boost::unordered_map<uint32_t, IfcUtil::IfcBaseClass*> entity_by_iden_t;
typedef std::map<std::string, IfcUtil::IfcBaseClass*> entity_by_guid_t;
typedef std::tuple<int, int, int> inverse_attr_record;
enum INVERSE_ATTR { INSTANCE_ID, INSTANCE_TYPE, ATTRIBUTE_INDEX };
@@ -133,6 +134,8 @@ private:
std::vector<Argument*> internal_attribute_vector_, internal_attribute_vector_simple_type_;
entity_by_id_t byid;
// this is for simple types
entity_by_iden_t byidentity;
entities_by_type_t bytype;
entities_by_type_t bytype_excl;
entities_by_ref_t byref;