private Model(IfcStore model) { _model = model; if (_model.Instances.Count == 0) { return; } // use all means of caching to get the initial structures quickly using (var entities = model.BeginEntityCaching()) using (var cache = model.BeginInverseCaching()) { // breakdown items _breakdownStructure = BreakdownItem.GetBreakdownStructure(this).ToList(); // milestones _milestones = Milestone.GetMilestones(this).ToList(); // reasons _reasons = Reason.GetReasons(this).ToList(); // actors _actors = Actor.GetActors(this).ToList(); // all requirements in project libraries _requirements = RequirementsSet.GetRequirements(this).ToList(); } }