public List <ITableNGlycan> Growth(MonosaccharideType suger) { List <ITableNGlycan> glycans = new List <ITableNGlycan>(); switch (suger) { case MonosaccharideType.GlcNAc: if (ValidAddGlcNAc()) { glycans.Add(CreateByAddGlcNAc()); } break; case MonosaccharideType.Man: if (ValidAddManCore()) { glycans.Add(CreateByAddManCore()); } else if (ValidAddManBranch()) { glycans.AddRange(CreateByAddManBranch()); } break; case MonosaccharideType.Fuc: if (ValidAddFucCore()) { glycans.Add(CreateByAddFucCore()); } break; default: break; } return(glycans); }
public List <ITableNGlycan> Growth(MonosaccharideType suger) { List <ITableNGlycan> glycans = new List <ITableNGlycan>(); switch (suger) { case MonosaccharideType.GlcNAc: if (ValidAddGlcNAcCore()) { glycans.Add(CreateByAddGlcNAcCore()); } else { if (ValidAddGlcNAcBisect()) { glycans.Add(CreateByAddGlcNAcBisect()); } if (ValidAddGlcNAcBranch()) { glycans.AddRange(CreateByAddGlcNAcBranch()); } } break; case MonosaccharideType.Man: if (ValidAddMan()) { glycans.Add(CreateByAddMan()); } break; case MonosaccharideType.Gal: if (ValidAddGal()) { glycans.AddRange(CreateByAddGal()); } break; case MonosaccharideType.Fuc: if (ValidAddFucCore()) { glycans.Add(CreateByAddFucCore()); } else if (ValidAddFucTerminal()) { glycans.AddRange(CreateByAddFucTerminal()); } break; case MonosaccharideType.NeuAc: if (ValidAddNeuAc()) { glycans.AddRange(CreateByAddNeuAc()); } break; case MonosaccharideType.NeuGc: if (ValidAddNeuGc()) { glycans.AddRange(CreateByAddNeuGc()); } break; default: break; } return(glycans); }
public abstract List <ITableNGlycan> Growth(MonosaccharideType suger);
public List <ITableNGlycan> Growth(MonosaccharideType suger) { return(glycan.Growth(suger)); }