Esempio n. 1
0
        /// <summary>
        /// Writes current data to a mzid file
        /// </summary>
        /// <param name="xml">
        /// A <see cref="System.String"/> with the output file name
        /// </param>
        public void Save(string xml)
        {
            Data.creationDate = DateTime.UtcNow;

            // CommonOntology
            Data.cvList = ListOntology.ToArray();

            // AnalysisSoftwareList
            Data.AnalysisSoftwareList = ListSW.ToArray();

            // Provider
            Data.Provider = Provider;

            // AuditCollection
            Data.AuditCollection              = new FuGECollectionAuditCollectionType();
            Data.AuditCollection.Person       = ListPeople.ToArray();
            Data.AuditCollection.Organization = ListOrganizations.ToArray();

            // SequenceCollection
            SequenceCollectionType seq = new SequenceCollectionType();

            seq.DBSequence          = ListProteins.ToArray();
            seq.Peptide             = ListPeptides.ToArray();
            Data.SequenceCollection = seq;

            // Serialization
            XmlSerializer serializer = new XmlSerializer(typeof(PSIPIMainmzIdentMLType));
            TextWriter    writer     = new StreamWriter(xml);

            serializer.Serialize(writer, Data);
            writer.Close();

            System.GC.Collect();
        }
Esempio n. 2
0
        /// <summary>
        /// Writes current data to a mzid file
        /// </summary>
        /// <param name="xml">
        /// A <see cref="System.String"/> with the output file name
        /// </param>
        public void Save(string xml)
        {
            Data.creationDate = DateTime.UtcNow;

            // AnalysisSoftwareList
            Data.AnalysisSoftwareList = ListSW.ToArray();

            // AuditCollection
            List <AbstractContactType> audit = new List <AbstractContactType>();

            audit.AddRange(ListOrganizations);
            audit.AddRange(ListPeople);
            Data.AuditCollection = audit.ToArray();

            // SequenceCollection
            SequenceCollectionType seq = new SequenceCollectionType();

            seq.DBSequence          = ListProteins.ToArray();
            seq.Peptide             = ListPeptides.ToArray();
            seq.PeptideEvidence     = ListEvidences.ToArray();
            Data.SequenceCollection = seq;

            // Serialization
            XmlSerializer serializer = new XmlSerializer(typeof(MzIdentMLType));
            TextWriter    writer     = new StreamWriter(xml);

            serializer.Serialize(writer, Data);
            writer.Close();
            //Data.SaveToFile( xml );

            System.GC.Collect();
        }
Esempio n. 3
0
        /// <summary>
        /// Helper method for including an additional analysis software to the list
        /// </summary>
        public void AddAnalysisSoftware(
            string id, string name, string version, string uri, string cv, string accession, string customizations)
        {
            AnalysisSoftwareType sw = new AnalysisSoftwareType();

            sw.id      = id;
            sw.name    = name;
            sw.version = version;
            sw.uri     = uri;
            if (cv != null && accession != null)
            {
                CVParamType p = new CVParamType();
                p.cvRef              = cv;
                p.accession          = accession;
                p.name               = name;
                sw.SoftwareName.Item = p;
            }
            if (customizations != null)
            {
                sw.Customizations = customizations;
            }
            ListSW.Add(sw);
        }