Ejemplo n.º 1
0
        private void checkChartTemplatesIn(ISimulationSettings simulationSettings)
        {
            var chartTemplates = simulationSettings.ChartTemplates.ToList();

            if (!referencesOldName(chartTemplates))
            {
                return;
            }

            var newChartTemplates = new List <CurveChartTemplate>();

            foreach (var chartTemplate in simulationSettings.ChartTemplates)
            {
                var newChartTemplate = chartTemplate;
                if (referencesOldName(chartTemplate))
                {
                    newChartTemplate = _cloneManager.Clone(chartTemplate);
                    foreach (var curveTemplate in newChartTemplate.Curves)
                    {
                        curveTemplate.xData.Path = stringReplace(curveTemplate.xData.Path);
                        curveTemplate.yData.Path = stringReplace(curveTemplate.yData.Path);
                    }
                }
                newChartTemplates.Add(newChartTemplate);
            }

            _changes.Add(simulationSettings, _buildingBlock, new ReplaceBuildingBlockTemplatesCommand(simulationSettings, newChartTemplates));
        }
Ejemplo n.º 2
0
 public override void GlobalContext()
 {
     base.GlobalContext();
     _compoundProcessRepository = IoC.Resolve <ICompoundProcessRepository>();
     _cloneManager                 = IoC.Resolve <ICloneManager>();
     _enzymeFactory                = IoC.Resolve <IIndividualEnzymeFactory>();
     _transporterFactory           = IoC.Resolve <IIndividualTransporterFactory>();
     _modelPropertiesTask          = IoC.Resolve <IModelPropertiesTask>();
     _modelConfigurationRepository = IoC.Resolve <IModelConfigurationRepository>();
     _compound   = DomainFactoryForSpecs.CreateStandardCompound();
     _individual = DomainFactoryForSpecs.CreateStandardIndividual();
     _protocol   = DomainFactoryForSpecs.CreateStandardIVBolusProtocol();
     _enzyme     = _enzymeFactory.AddMoleculeTo(_individual, "CYP").DowncastTo <IndividualEnzyme>();
     _allExpressionParameters = _individual.AllExpressionParametersFor(_enzyme);
     _allExpressionParameters[CoreConstants.Compartment.PLASMA].Value               = _relExpPls;
     _allExpressionParameters[CoreConstants.Compartment.BLOOD_CELLS].Value          = _relExpBloodCells;
     _allExpressionParameters[CoreConstants.Compartment.VASCULAR_ENDOTHELIUM].Value = _relExpVascEndo;
     _hct = _individual.Organism.Parameter(CoreConstants.Parameters.HCT).Value;
     _metabolizationProcess = _cloneManager.Clone(_compoundProcessRepository
                                                  .ProcessByName(CoreConstantsForSpecs.Process.METABOLIZATION_SPECIFIC_FIRST_ORDER).DowncastTo <PartialProcess>());
     _metabolizationProcess.Name = "My Partial Process";
     _metabolizationProcess.Parameter(ConverterConstants.Parameters.CLspec).Value = 15;
     _compound.AddProcess(_metabolizationProcess);
     _simulationRunOptions = new SimulationRunOptions {
         RaiseEvents = false
     };
 }
Ejemplo n.º 3
0
        public override void UpdatePropertiesFrom(IUpdatable sourceObject, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(sourceObject, cloneManager);
            var sourceSimulation = sourceObject as Simulation;

            if (sourceSimulation == null)
            {
                return;
            }
            Properties = sourceSimulation.Properties.Clone(cloneManager);
            sourceSimulation.UsedBuildingBlocks.Each(bb => AddUsedBuildingBlock(bb.Clone(cloneManager)));
            Model = cloneManager.Clone(sourceSimulation.Model);
            sourceSimulation.UsedObservedData.Each(data => AddUsedObservedData(data.Clone()));
            Reactions            = cloneManager.Clone(sourceSimulation.Reactions);
            SimulationSettings   = cloneManager.Clone(sourceSimulation.SimulationSettings);
            ReactionDiagramModel = sourceSimulation.ReactionDiagramModel.CreateCopy();
            updateBuildingBlockReferences(sourceSimulation);
        }
Ejemplo n.º 4
0
 protected override void Context()
 {
     base.Context();
     _cloneManager   = A.Fake <ICloneManager>();
     _sourceMolecule = new IndividualEnzyme {
         Ontogeny = new UserDefinedOntogeny()
     };
     _clonedOntogeny = new UserDefinedOntogeny();
     A.CallTo(() => _cloneManager.Clone(_sourceMolecule.Ontogeny)).Returns(_clonedOntogeny);
 }
Ejemplo n.º 5
0
 public UserDisplayUnitsPresenter(IUserDisplayUnitsView view, IDisplayUnitsPresenter displayUnitsPresenter, IUserSettings userSettings, ICloneManager cloneManager)
     : base(view)
 {
     _displayUnitsPresenter = displayUnitsPresenter;
     _userSettings          = userSettings;
     _cloneManager          = cloneManager;
     AddSubPresenters(_displayUnitsPresenter);
     _view.AddView(_displayUnitsPresenter.View);
     _settingsToEdit = cloneManager.Clone(_userSettings.DisplayUnits);
 }
Ejemplo n.º 6
0
        public ImportPopulationSettings Clone(ICloneManager cloneManager)
        {
            var settings = new ImportPopulationSettings
            {
                BaseIndividual = cloneManager.Clone(BaseIndividual)
            };

            _allFiles.Each(f => settings.AddFile(f.Clone()));
            return(settings);
        }
Ejemplo n.º 7
0
        public RandomPopulationSettings Clone(ICloneManager cloneManager)
        {
            var clone = new RandomPopulationSettings {
                BaseIndividual = cloneManager.Clone(BaseIndividual), NumberOfIndividuals = NumberOfIndividuals
            };

            _genderRatios.Each(gr => clone.AddGenderRatio(gr.Clone()));
            _parameterRanges.Each(pr => clone.AddParameterRange(pr.Clone()));
            return(clone);
        }
Ejemplo n.º 8
0
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);
            var intervalGrouping = source as IntervalGroupingDefinition;

            if (intervalGrouping == null)
            {
                return;
            }
            intervalGrouping.Items.Each(item => AddItem(cloneManager.Clone(item)));
        }
Ejemplo n.º 9
0
 public virtual UsedBuildingBlock Clone(ICloneManager cloneManager)
 {
     return(new UsedBuildingBlock(TemplateId, BuildingBlockType)
     {
         Altered = Altered,
         Version = Version,
         StructureVersion = StructureVersion,
         BuildingBlock = cloneManager.Clone(BuildingBlock),
         Name = Name
     });
 }
        protected override void Context()
        {
            _cloneManager         = A.Fake <ICloneManager>();
            _view                 = A.Fake <IUserDisplayUnitsView>();
            _displayUnitPresenter = A.Fake <IDisplayUnitsPresenter>();
            _userSettings         = A.Fake <IUserSettings>();

            _cloneDisplayUnitsManager = new DisplayUnitsManager();
            A.CallTo(() => _cloneManager.Clone(_userSettings.DisplayUnits)).Returns(_cloneDisplayUnitsManager);
            sut = new UserDisplayUnitsPresenter(_view, _displayUnitPresenter, _userSettings, _cloneManager);
        }
Ejemplo n.º 11
0
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);
            var userDefinedOntogeny = source as UserDefinedOntogeny;

            if (userDefinedOntogeny == null)
            {
                return;
            }
            Table = cloneManager.Clone(userDefinedOntogeny.Table);
        }
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);
            var valueMapping = source as ValueMappingGroupingDefinition;

            if (valueMapping == null)
            {
                return;
            }
            valueMapping.Mapping.KeyValues.Each(kv => Mapping.Add(kv.Key, cloneManager.Clone(kv.Value)));
        }
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);
            var covariateField = source as PopulationAnalysisCovariateField;

            if (covariateField == null)
            {
                return;
            }
            Covariate = covariateField.Covariate;
            covariateField.GroupingItems.Each(x => AddGroupingItem(cloneManager.Clone(x)));
        }
Ejemplo n.º 14
0
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);

            var sourceSpatialStructure = source as ISpatialStructure;

            if (sourceSpatialStructure == null)
            {
                return;
            }

            sourceSpatialStructure.TopContainers.Each(c => AddTopContainer(cloneManager.Clone(c)));
            NeighborhoodsContainer = cloneManager.Clone(sourceSpatialStructure.NeighborhoodsContainer);
            foreach (var neighborhoodBuilder in Neighborhoods)
            {
                var sourceNeighborhood = neighborhoodBuilderSourceFor(neighborhoodBuilder, sourceSpatialStructure.Neighborhoods);
                updateNeighborsReferences(sourceNeighborhood, neighborhoodBuilder);
            }

            GlobalMoleculeDependentProperties = cloneManager.Clone(sourceSpatialStructure.GlobalMoleculeDependentProperties);
        }
Ejemplo n.º 15
0
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);
            var statisticalAnalysis = source as PopulationStatisticalAnalysis;

            if (statisticalAnalysis == null)
            {
                return;
            }
            statisticalAnalysis.Statistics.Each(s => AddStatistic(cloneManager.Clone(s)));
            TimeUnit = statisticalAnalysis.TimeUnit;
        }
Ejemplo n.º 16
0
        private T createClone <T>(T objectToClone, ICloneManager cloneManager) where T : class, IUpdatable
        {
            var clone         = cloneManager.Clone(objectToClone);
            var buildingBlock = clone as IPKSimBuildingBlock;

            if (buildingBlock != null)
            {
                _buildingBlockFinalizer.Finalize(buildingBlock);
            }

            return(clone);
        }
Ejemplo n.º 17
0
        private void rebind(ISimulationSettings simulationSettings)
        {
            var chartTemplatesToEdit = simulationSettings.ChartTemplates.Select(x =>
            {
                var curveChartTemplate = _cloneManager.Clone(x);
                // setting IsDefault is not part of general cloning and is done when cloning the set only
                curveChartTemplate.IsDefault = x.IsDefault;
                return(curveChartTemplate);
            });

            _chartTemplateManagerPresenter.EditTemplates(chartTemplatesToEdit.OrderBy(x => x.Name));
        }
        public void EditTemplates(IEnumerable <CurveChartTemplate> chartTemplates)
        {
            var chartTemplatesToEdit = chartTemplates.Select(x =>
            {
                var curveChartTemplate = _cloneManager.Clone(x);
                // setting IsDefault is not part of general cloning and is done when cloning the set only
                curveChartTemplate.IsDefault = x.IsDefault;
                return(curveChartTemplate);
            });

            _chartTemplateManagerPresenter.EditTemplates(chartTemplatesToEdit);
        }
Ejemplo n.º 19
0
        public virtual void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            var sourceAnalysis = source as PopulationAnalysisChart;

            if (sourceAnalysis == null)
            {
                return;
            }
            Name                   = sourceAnalysis.Name;
            Description            = sourceAnalysis.Description;
            ChartSettings          = cloneManager.Clone(sourceAnalysis.ChartSettings);
            ObservedDataCollection = cloneManager.Clone(sourceAnalysis.ObservedDataCollection);
            Title                  = sourceAnalysis.Title;
            FontAndSize.UpdatePropertiesFrom(sourceAnalysis.FontAndSize);
            IncludeOriginData = sourceAnalysis.IncludeOriginData;
            OriginText        = sourceAnalysis.OriginText;

            PrimaryXAxisSettings.UpdatePropertiesFrom(sourceAnalysis.PrimaryXAxisSettings, cloneManager);
            PrimaryYAxisSettings.UpdatePropertiesFrom(sourceAnalysis.PrimaryYAxisSettings, cloneManager);

            sourceAnalysis.SecondaryYAxisSettings.Each((axisSettings, index) => { AxisSettingsForSecondaryYAxis(index).UpdatePropertiesFrom(axisSettings, cloneManager); });
        }
        protected override void Context()
        {
            base.Context();
            _sourceParameterIdentification  = new ParameterIdentification();
            _identificationParameter        = new IdentificationParameter();
            _cloneOfIdentificationParameter = new IdentificationParameter();
            _sourceParameterIdentification.AddSimulation(_simulation);
            _sourceParameterIdentification.AddOutputMapping(_outputMapping);
            _sourceParameterIdentification.AddIdentificationParameter(_identificationParameter);

            _cloneManager = A.Fake <ICloneManager>();
            A.CallTo(() => _cloneManager.Clone(_identificationParameter)).Returns(_cloneOfIdentificationParameter);
        }
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);
            var groupingField = source as PopulationAnalysisGroupingField;

            if (groupingField == null)
            {
                return;
            }
            GroupingDefinition = cloneManager.Clone(groupingField.GroupingDefinition);

            //Reference grouping item will be set on the fly when creating flat data table and does not need to be cloned
            //ReferenceGroupingItem
        }
Ejemplo n.º 22
0
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);
            var sourceStartValeBuidlingBlock = source as IStartValuesBuildingBlock <T>;

            if (sourceStartValeBuidlingBlock == null)
            {
                return;
            }

            sourceStartValeBuidlingBlock.Each(startValue => Add(cloneManager.Clone(startValue)));
            MoleculeBuildingBlockId = sourceStartValeBuidlingBlock.MoleculeBuildingBlockId;
            SpatialStructureId      = sourceStartValeBuidlingBlock.SpatialStructureId;
        }
Ejemplo n.º 23
0
 public virtual IEnumerable <ISchemaItem> ExpandedSchemaItems(ICloneManager cloneManager)
 {
     {
         double offset = TimeBetweenRepetitions.Value;
         for (int repetition = 0; repetition < NumberOfRepetitions.Value; repetition++)
         {
             foreach (var schemaItem in SchemaItems)
             {
                 var expandedItem = cloneManager.Clone(schemaItem);
                 expandedItem.StartTime.Value += StartTime.Value + repetition * offset;
                 yield return(expandedItem);
             }
         }
     }
 }
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);

            var srcAppMoleculeBuilder = source as IApplicationMoleculeBuilder;

            if (srcAppMoleculeBuilder == null)
            {
                return;
            }

            RelativeContainerPath = srcAppMoleculeBuilder.RelativeContainerPath.Clone <IObjectPath>();
            Formula   = cloneManager.Clone(srcAppMoleculeBuilder.Formula);
            Dimension = srcAppMoleculeBuilder.Dimension;
        }
Ejemplo n.º 25
0
        protected override void Context()
        {
            base.Context();
            _cloneManager   = A.Fake <ICloneManager>();
            _sourceTemplate = new CurveChartTemplate {
                Name = "TOTO", ChartSettings = { BackColor = Color.Red }
            };
            _sourceTemplate.AddAxis(new Axis(AxisTypes.X));
            var curveTemplate = new CurveTemplate {
                Name = "XX"
            };

            _cloneCurve = new CurveTemplate();
            _sourceTemplate.Curves.Add(curveTemplate);
            A.CallTo(() => _cloneManager.Clone(curveTemplate)).Returns(_cloneCurve);
        }
Ejemplo n.º 26
0
        public void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            var sourceChartTemplate = source as CurveChartTemplate;

            if (sourceChartTemplate == null)
            {
                return;
            }

            FontAndSize.UpdatePropertiesFrom(sourceChartTemplate.FontAndSize, cloneManager);
            ChartSettings.UpdatePropertiesFrom(sourceChartTemplate.ChartSettings, cloneManager);
            Name = sourceChartTemplate.Name;
            _axes.Clear();
            Curves.Clear();
            sourceChartTemplate.Axes.Each(axis => AddAxis(axis.Clone()));
            sourceChartTemplate.Curves.Each(curve => Curves.Add(cloneManager.Clone(curve)));
            IsDefault       = sourceChartTemplate.IsDefault;
            PreviewSettings = sourceChartTemplate.PreviewSettings;
        }
Ejemplo n.º 27
0
        public override void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(source, cloneManager);

            var sourceMoleculeBuilder = source as IMoleculeBuilder;

            if (sourceMoleculeBuilder == null)
            {
                return;
            }

            IsFloating   = sourceMoleculeBuilder.IsFloating;
            QuantityType = sourceMoleculeBuilder.QuantityType;
            IsXenobiotic = sourceMoleculeBuilder.IsXenobiotic;
            DisplayUnit  = sourceMoleculeBuilder.DisplayUnit;
            Dimension    = sourceMoleculeBuilder.Dimension;

            DefaultStartFormula = cloneManager.Clone(sourceMoleculeBuilder.DefaultStartFormula);
            _usedCalculationMethods.Clear();
            sourceMoleculeBuilder.UsedCalculationMethods.Each(x => AddUsedCalculationMethod(x.Clone()));
        }
Ejemplo n.º 28
0
 public override void GlobalContext()
 {
     base.GlobalContext();
     _compoundProcessRepository = IoC.Resolve <ICompoundProcessRepository>();
     _cloneManager                 = IoC.Resolve <ICloneManager>();
     _enzymeFactory                = IoC.Resolve <IIndividualEnzymeFactory>();
     _transporterFactory           = IoC.Resolve <IIndividualTransporterFactory>();
     _modelPropertiesTask          = IoC.Resolve <IModelPropertiesTask>();
     _modelConfigurationRepository = IoC.Resolve <IModelConfigurationRepository>();
     _compound   = DomainFactoryForSpecs.CreateStandardCompound();
     _individual = DomainFactoryForSpecs.CreateStandardIndividual();
     _protocol   = DomainFactoryForSpecs.CreateStandardIVBolusProtocol();
     _enzyme     = _enzymeFactory.CreateFor(_individual).DowncastTo <IndividualEnzyme>().WithName("CYP");
     _enzyme.GetRelativeExpressionNormParameterFor(CoreConstants.Compartment.Plasma).Value              = _relExpNormPls;
     _enzyme.GetRelativeExpressionNormParameterFor(CoreConstants.Compartment.BloodCells).Value          = _relExpNormBloodCells;
     _enzyme.GetRelativeExpressionNormParameterFor(CoreConstants.Compartment.VascularEndothelium).Value = _relExpVascEndo;
     _individual.AddMolecule(_enzyme);
     _hct = _individual.Organism.Parameter(CoreConstants.Parameter.HCT).Value;
     _metabolizationProcess      = _cloneManager.Clone(_compoundProcessRepository.ProcessByName(CoreConstantsForSpecs.Process.METABOLIZATION_SPECIFIC_FIRST_ORDER).DowncastTo <PartialProcess>());
     _metabolizationProcess.Name = "My Partial Process";
     _metabolizationProcess.Parameter(ConverterConstants.Parameter.CLspec).Value = 15;
     _compound.AddProcess(_metabolizationProcess);
 }
Ejemplo n.º 29
0
        public override void UpdatePropertiesFrom(IUpdatable sourceObject, ICloneManager cloneManager)
        {
            base.UpdatePropertiesFrom(sourceObject, cloneManager);
            var sourceMolecule = sourceObject as IndividualMolecule;

            if (sourceMolecule == null)
            {
                return;
            }

            QueryConfiguration = sourceMolecule.QueryConfiguration;
            MoleculeType       = sourceMolecule.MoleculeType;
            var sourceOntogeny = sourceMolecule.Ontogeny;

            if (sourceOntogeny.IsUserDefined())
            {
                Ontogeny = cloneManager.Clone(sourceOntogeny);
            }
            else
            {
                Ontogeny = sourceMolecule.Ontogeny;
            }
        }
Ejemplo n.º 30
0
        public virtual void UpdatePropertiesFrom(IUpdatable source, ICloneManager cloneManager)
        {
            var populationAnalysis = source as PopulationAnalysis;

            populationAnalysis?.AllFields.Each(f => Add(cloneManager.Clone(f)));
        }