Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
 public string ExtendedSequence()
 {
     return(PreviousAminoAcid.ToString() + '.' + Sequence + '.' + NextAminoAcid.ToString());
 }