private void fillReactions() { foreach (var flatProc in _flatProcessesRepository.All().Where(processIsNonTemplateReaction)) { _allReactions.Add(_activeProcessMapper.MapFrom(flatProc).DowncastTo <PKSimReaction>()); } _allReactions.Each(process => _parameterContainerTask.AddProcessBuilderParametersTo(process)); }
protected override void DoStart() { var query = _flatProcessesRepository.All().Where(processIsSimulationActiveProcess) .MapAllUsing(_activeProcessMapper) .Where(activeProcess => activeProcess != null); _allSimulationActiveProcesses.AddRange(query); _allSimulationActiveProcesses.Each(process => _parameterContainerTask.AddProcessBuilderParametersTo(process)); }
public PKSimTransport MapFrom(FlatProcess flatProcess) { var transport = _entityBaseFactory.Create <PKSimTransport>() .WithName(flatProcess.Name) .WithDimension(_dimensionRepository.AmountPerTime); _parameterContainerTask.AddProcessBuilderParametersTo(transport); addDescriptorConditions(transport.SourceCriteria, ProcessTagType.Source, transport.Name); addDescriptorConditions(transport.TargetCriteria, ProcessTagType.Target, transport.Name); transport.CalculationMethod = flatProcess.CalculationMethod; transport.Rate = flatProcess.Rate; transport.Formula = _formulaFactory.RateFor(transport, new FormulaCache()); transport.CreateProcessRateParameter = flatProcess.CreateProcessRateParameter; return(transport); }
private void addInteractionParameters(Compound compound, IMoleculeBuilder drug, InteractionProperties interactionProperties) { foreach (var interactionProcess in compound.AllProcesses <InteractionProcess>()) { if (!shouldGenerateInteractionContainer(interactionProperties, interactionProcess)) { continue; } var interactionContainer = _objectBaseFactory.Create <InteractionContainer>() .WithIcon(interactionProcess.Icon) .WithName(interactionProcess.InternalName); //only add global pamrameters to the intercation container _parameterContainerTask.AddProcessBuilderParametersTo(interactionContainer); _parameterSetUpdater.UpdateValuesByName(interactionProcess, interactionContainer); interactionContainer.Name = interactionProcess.Name; drug.AddInteractionContainer(interactionContainer); } }
public TransporterMoleculeContainer ActiveTransportFrom(CompoundProcess compoundProcess, IndividualTransporter transporter, IFormulaCache formulaCache) { var transporterMoleculeContainer = _objectBaseFactory.Create <TransporterMoleculeContainer>().WithName(compoundProcess.InternalName); transporterMoleculeContainer.Icon = compoundProcess.Icon; transporterMoleculeContainer.TransportName = compoundProcess.Name; foreach (var inducedProcess in transporter.AllInducedProcesses()) { var activeTransporterBuilder = activeTransportFrom(compoundProcess, inducedProcess, formulaCache); transporterMoleculeContainer.Icon = activeTransporterBuilder.Icon; activeTransporterBuilder.TransportType = transporter.TransportType; transporterMoleculeContainer.AddActiveTransportRealization(activeTransporterBuilder); updateTransporterTagsFor(transporter, activeTransporterBuilder, inducedProcess); } _parameterContainerTask.AddProcessBuilderParametersTo(transporterMoleculeContainer); _parameterSetUpdater.UpdateValuesByName(compoundProcess.AllParameters(), transporterMoleculeContainer.Parameters); transporterMoleculeContainer.Name = transporter.Name; return(transporterMoleculeContainer); }