Exemple #1
0
        public MassTagMatchedViewModel(ClusterToMassTagMap match)
        {
            m_match = match;
            m_tag   = match.MassTag;

            MatchedProteins = new ObservableCollection <ProteinViewModel>();
            LoadProteinData(m_tag);
        }
Exemple #2
0
        /// <summary>
        ///     Writes the peak matching results to the local peak matching database.
        /// </summary>
        public void WritePeakMatchResults(PeakMatchingResults <UMCClusterLight, MassTagLight> results,
                                          MassTagDatabase database,
                                          out int matchedMassTags,
                                          out int matchedProteins)
        {
            var clusterToMassTagMapDaoHibernate = new ClusterToMassTagMapDAOHibernate();

            var stacFdrdaoHibernate     = new STACDAOHibernate();
            var massTagList             = new List <MassTagLight>();
            var proteinList             = new Dictionary <int, Protein>();
            var clusterToMassTagMapList = new List <ClusterToMassTagMap>();

            clusterToMassTagMapDaoHibernate.ClearAll();
            stacFdrdaoHibernate.ClearAll();

            foreach (var match in results.Matches)
            {
                var tag                 = match.Target;
                var feature             = match.Observed;
                var clusterToMassTagMap = new ClusterToMassTagMap(feature.Id, tag.Id);
                clusterToMassTagMap.ConformerId = tag.ConformationId;

                if (!clusterToMassTagMapList.Contains(clusterToMassTagMap))
                {
                    clusterToMassTagMapList.Add(clusterToMassTagMap);
                    clusterToMassTagMap.StacScore = match.Confidence;
                    clusterToMassTagMap.StacUP    = match.Uniqueness;
                }

                if (!massTagList.Contains(tag))
                {
                    massTagList.Add(tag);
                }

                var databaseContainsProtein = database.Proteins.ContainsKey(tag.Id);
                if (databaseContainsProtein)
                {
                    var proteins = database.Proteins[tag.Id];
                    foreach (var protein in proteins.Where(protein => !proteinList.ContainsKey(protein.ProteinId)))
                    {
                        proteinList.Add(protein.ProteinId, protein);
                    }
                }
            }

            var uniqueProteins = new List <Protein>();

            foreach (var protein in proteinList.Values)
            {
                uniqueProteins.Add(protein);
            }

            matchedMassTags = massTagList.Count;
            matchedProteins = uniqueProteins.Count;
            clusterToMassTagMapDaoHibernate.AddAll(clusterToMassTagMapList);
            stacFdrdaoHibernate.AddAll(results.FdrTable);
        }
Exemple #3
0
 public MassTagMatchTreeViewModel(ClusterToMassTagMap match, UMCClusterTreeViewModel parent)
 {
     m_match  = match;
     m_parent = parent;
 }
Exemple #4
0
        private void m_dataGrid_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var tag = m_dataGrid.SelectedItem as ClusterToMassTagMap;

            SelectedTag = tag;
        }