- Take better care of inverse cardinalities and respect more CoordinationView agreements in IfcOpenHouse

- Track inverse relationships in an IfcWrite context as well
- Fix for lists of SELECT types
This commit is contained in:
Thomas Krijnen
2014-05-05 16:17:28 +00:00
parent 1b54ba039d
commit 948d7675f0
7 changed files with 375 additions and 111 deletions
+10 -1
View File
@@ -33,7 +33,16 @@ IfcWritableEntity::~IfcWritableEntity() {
delete _id;
}
int IfcWritableEntity::setId(int i) {
return *(_id = new int(i > 0 ? i : file->FreshId()));
if (i > 0) {
delete _id;
return *(_id = new int(i));
} else {
if (_id) { return *_id; }
else {
delete _id;
return *(_id = new int(file->FreshId()));
}
}
}
IfcWritableEntity::IfcWritableEntity(IfcAbstractEntity* e)
{