public SetProteinIntracellularVascularEndoLocationCommand(IndividualProtein protein, IntracellularVascularEndoLocation newVascularEndoLocation, IExecutionContext context)
 {
     _protein = protein;
     _newVascularEndoLocation = newVascularEndoLocation;
     BuildingBlockId          = context.BuildingBlockIdContaining(protein);
     ObjectType  = PKSimConstants.ObjectTypes.Protein;
     CommandType = PKSimConstants.Command.CommandTypeEdit;
     _proteinId  = _protein.Id;
     context.UpdateBuildinBlockProperties(this, context.BuildingBlockContaining(_protein));
 }
示例#2
0
        public static Localization ConvertToLocalization(TissueLocation tissueLocation, MembraneLocation membraneLocation,
                                                         IntracellularVascularEndoLocation vascularEndoLocation)
        {
            switch (tissueLocation)
            {
            case TissueLocation.Interstitial:
                return(Localization.Interstitial | Localization.BloodCellsIntracellular | Localization.VascMembraneTissueSide);

            case TissueLocation.Intracellular:
                var vacEndoLocalization = vascularEndoLocation == IntracellularVascularEndoLocation.Endosomal
                  ? Localization.VascEndosome
                  : Localization.VascMembraneTissueSide;
                return(Localization.Intracellular | Localization.BloodCellsIntracellular | vacEndoLocalization);

            case TissueLocation.ExtracellularMembrane:
                var membLocation = membraneLocation == MembraneLocation.Apical
                  ? Localization.VascMembranePlasmaSide
                  : Localization.VascMembraneTissueSide;
                return(Localization.Interstitial | Localization.BloodCellsMembrane | membLocation);

            default:
                throw new ArgumentOutOfRangeException(nameof(tissueLocation), tissueLocation, null);
            }
        }
 public void IntracellularLocationVascularEndoChanged(IntracellularVascularEndoLocation vascularEndoLocation)
 {
     AddCommand(_moleculeExpressionTask.SetIntracellularVascularEndoLocation(_protein, vascularEndoLocation));
 }
示例#4
0
 public ICommand SetIntracellularVascularEndoLocation(IndividualProtein protein, IntracellularVascularEndoLocation vascularEndoLocation)
 {
     return(new SetProteinIntracellularVascularEndoLocationCommand(protein, vascularEndoLocation, _executionContext).Run(_executionContext));
 }
 protected override void PerformExecuteWith(IExecutionContext context)
 {
     _oldVascularEndoLocation = _protein.IntracellularVascularEndoLocation;
     _protein.IntracellularVascularEndoLocation = _newVascularEndoLocation;
     Description = PKSimConstants.Command.SetProteinMembraneLocationDescription(_oldVascularEndoLocation.ToString(), _newVascularEndoLocation.ToString());
 }