CSMSL.IO.MzTab.MzTabMetaData.GetKeyValuePairs C# (CSharp) Метод

GetKeyValuePairs() публичный Метод

public GetKeyValuePairs ( ) : string>>.IEnumerable
Результат string>>.IEnumerable
        public IEnumerable<KeyValuePair<string, string>> GetKeyValuePairs()
        {
            int i, j;
            string name;

            yield return new KeyValuePair<string, string>(Fields.Version, Version);
            yield return new KeyValuePair<string, string>(Fields.Mode, Mode.ToString());
            yield return new KeyValuePair<string, string>(Fields.Type, Type.ToString());
            yield return new KeyValuePair<string, string>(Fields.Description, Description);

            i = MzTab.IndexBased;
            foreach (string msrunlocation in MsRunLocations)
            {
                name = MzTab.GetArrayName(Fields.MsRunLocation, i);
                yield return new KeyValuePair<string, string>(name, msrunlocation);
                i++;
            }

            i = MzTab.IndexBased;
            foreach (MzTabSoftware software in Software)
            {
                name = MzTab.GetArrayName(Fields.Software, i);
                yield return new KeyValuePair<string, string>(name, software.ToString());
                j = MzTab.IndexBased;
                foreach (string setting in software.Settings)
                {
                    name = MzTab.GetArrayName(Fields.SoftwareSettings, i, j);
                    yield return new KeyValuePair<string, string>(name, setting);
                    j++;
                }
                i++;
            }
        }

Usage Example

Пример #1
0
        public void WriteMetaData(MzTabMetaData metaData)
        {
            if (_currentState > MzTab.States.MetaData)
            {
                throw new ArgumentException("Unable to write Metadata, incorrect location. Only one Metadata section per file");
            }
            _currentState |= MzTab.States.MetaData;

            foreach (KeyValuePair <string, string> kvp in metaData.GetKeyValuePairs())
            {
                _writer.Write(MzTab.MetaDataLinePrefix);
                _writer.Write(MzTab.FieldSeparator);
                _writer.Write(kvp.Key);
                _writer.Write(MzTab.FieldSeparator);
                _writer.WriteLine(kvp.Value);
            }

            // Save meta data
            _metaData = metaData;
        }