public void DeleteInstance(NdfObject inst) { Instances.Remove(inst); NdfClass cls = inst.Class; cls.Instances.Remove(inst); if (TopObjects.Contains(inst.Id)) { TopObjects.Remove(inst.Id); } }
public NdfObject CreateInstanceOf(NdfClass cls, bool isTopLevelInstance = true) { var newId = (uint)Instances.Count(); var inst = new NdfObject { Class = cls, Id = newId }; AddEmptyProperties(inst); Instances.Add(inst); if (isTopLevelInstance) { TopObjects.Add(inst.Id); inst.IsTopObject = true; } return(inst); }