private void loadObjectBase <T>(T objectToLoad) where T : IObjectBase { using (var progressUpdater = _progressManager.Create()) { progressUpdater.ReportStatusMessage(PKSimConstants.UI.LoadingObject(objectToLoad.Name)); //first unregistered the object to load that might contain dummy objects that should be deleted _registrationTask.Unregister(objectToLoad); //load object content _contentLoader.LoadContentFor(objectToLoad); _registrationTask.Register(objectToLoad); //special loading steps for simulation loadSimulations(objectToLoad as Simulation); } }