public override string GetValue(string fieldName) { switch (fieldName) { case Fields.Sequence: return(string.IsNullOrEmpty(Sequence) ? MzTab.NullFieldText : Sequence); case Fields.ID: return(ID.ToString()); case Fields.Accession: return(Accession); case Fields.Unique: return(Unique ? "1" : "0"); case Fields.Database: return(string.IsNullOrEmpty(Database) ? MzTab.NullFieldText : Database); case Fields.DatabaseVersion: return(string.IsNullOrEmpty(DatabaseVersion) ? MzTab.NullFieldText : DatabaseVersion); case Fields.SearchEngine: return(SearchEngines == null ? MzTab.NullFieldText : string.Join("|", SearchEngines)); case Fields.Reliability: if (Reliability == MzTab.ReliabilityScore.NotSet) { return(MzTab.NullFieldText); } return(((int)Reliability).ToString()); case Fields.Modifications: return(string.IsNullOrEmpty(Modifications) ? MzTab.NullFieldText : Modifications); case Fields.RetentionTime: return(RetentionTime == null ? MzTab.NullFieldText : string.Join("|", RetentionTime)); case Fields.Charge: return(Charge.ToString()); case Fields.ExperimentalMZ: return(ExperimentalMZ.ToString()); case Fields.TheoreticalMZ: return(TheoreticalMZ.ToString()); case Fields.Uri: return(Uri == null ? MzTab.NullFieldText : Uri.ToString()); case Fields.SpectraReference: return(string.IsNullOrEmpty(SpectraReference) ? MzTab.NullFieldText : SpectraReference); case Fields.PreviousAminoAcid: return(default(char).Equals(PreviousAminoAcid) ? "-" : PreviousAminoAcid.ToString()); case Fields.FollowingAminoAcid: return(default(char).Equals(FollowingAminoAcid) ? "-" : FollowingAminoAcid.ToString()); case Fields.StartResidue: return(StartResiduePosition.ToString()); case Fields.EndResidue: return(EndResiduePosition.ToString()); } if (fieldName.Contains("[")) { string condensedFieldName; List <int> indices = MzTab.GetFieldIndicies(fieldName, out condensedFieldName); if (condensedFieldName == Fields.SearchEngineScore) { return(GetListValue(_searchEngineScores, indices[0])); } } if (fieldName.StartsWith(MzTab.OptionalColumnPrefix)) { return(GetOptionalData(fieldName)); } throw new ArgumentException("Unexpected field name: " + fieldName); }
public string ExtendedSequence() { return(PreviousAminoAcid.ToString() + '.' + Sequence + '.' + NextAminoAcid.ToString()); }