private TreeNode FindSeriesNode(ClientQueryDataSet.SeriesRow series, TreeNode studyNode)
 {
     if (_seriesNodes.ContainsKey(series.SeriesInstanceUID))
     {
         return(_seriesNodes [series.SeriesInstanceUID]);
     }
     else
     {
         return(null);
     }
 }
        private void PopulateState(ClientQueryDataSet.StudiesRow study, ClientQueryDataSet.SeriesRow series)
        {
            if (__LoadingDataSetState.Studies.FindByStudyInstanceUID(study.StudyInstanceUID) == null)
            {
                __LoadingDataSetState.Studies.ImportRow(study);
            }

            if (__LoadingDataSetState.Series.FindBySeriesInstanceUID(series.SeriesInstanceUID) == null)
            {
                __LoadingDataSetState.Series.ImportRow(series);
            }
        }
        public void AddSeries
        (
            ClientQueryDataSet.StudiesRow studyInformation,
            ClientQueryDataSet.SeriesRow series,
            ClientQueryDataSet.ImagesRow[] images
        )
        {
            TreeNode patientNode;


            patientNode = FindPatientNode(studyInformation);

            if (null != patientNode)
            {
                TreeNode studyNode = FindStudyNode(studyInformation, patientNode);

                if (studyNode != null)
                {
                    TreeNode seriesNode = FindSeriesNode(series, studyNode);

                    if (null != seriesNode)
                    {
                        foreach (ClientQueryDataSet.ImagesRow instanceInfo in images)
                        {
                            TreeNode instanceNode = FindInstanceNode(instanceInfo, seriesNode);

                            if (null == instanceNode)
                            {
                                CreateInstanceNode(instanceInfo, seriesNode);
                            }
                        }
                    }
                    else
                    {
                        CreateSeriesNode(series, images, studyNode);
                    }
                }
                else
                {
                    CreateStudyNode(studyInformation, series, images, patientNode);
                }
            }
            else
            {
                CreatePatientNode(studyInformation, series, images);
            }
        }
        private SeriesInformation GetSeriesInformation(StudyInformation studyInfo, ClientQueryDataSet.SeriesRow series)
        {
            string patientID         = studyInfo.PatientID;
            string studyInstanceUID  = studyInfo.StudyInstanceUID;
            string seriesInstanceUID = series.SeriesInstanceUID;
            string seriesDescription = series.IsSeriesDescriptionNull( ) ? string.Empty : series.SeriesDescription;

            SeriesInformation seriesInfo = new SeriesInformation(patientID, studyInstanceUID, seriesInstanceUID, seriesDescription);

            seriesInfo.Modality = series.IsModalityNull( ) ? string.Empty : series.Modality;
            seriesInfo.NumberOfSeriesRelatedInstances = series.IsFrameCountNull( ) ? string.Empty : series.FrameCount;
            seriesInfo.SeriesDate   = series.IsSeriesDateNull( ) ? string.Empty : series.SeriesDate;
            seriesInfo.SeriesNumber = series.IsSeriesNumberNull( ) ? string.Empty : series.SeriesNumber;
            seriesInfo.SeriesTime   = series.IsSeriesTimeNull( ) ? string.Empty : series.SeriesTime;

            return(seriesInfo);
        }
        private void CreateSeriesNode
        (
            ClientQueryDataSet.SeriesRow series,
            ClientQueryDataSet.ImagesRow[] instances,
            TreeNode studyNode
        )
        {
            string   seriesText = string.Empty;
            TreeNode seriesNode;

            if (!series.IsSeriesNumberNull( ) || !string.IsNullOrEmpty(series.SeriesNumber))
            {
                seriesText += "#" + series.SeriesNumber + ": ";
            }

            if (!series.IsSeriesDescriptionNull( ) && !string.IsNullOrEmpty(series.SeriesDescription))
            {
                seriesText += series.SeriesDescription;
            }

            if (string.IsNullOrEmpty(seriesText))
            {
                seriesText = series.SeriesInstanceUID;
            }

            seriesNode = studyNode.Nodes.Add(seriesText);

            seriesNode.Tag = series;

            _seriesNodes.Add(series.SeriesInstanceUID, seriesNode);

            foreach (ClientQueryDataSet.ImagesRow instance in instances)
            {
                CreateInstanceNode(instance, seriesNode);
            }
        }
 public ProcessSeriesEventArgs(ClientQueryDataSet.StudiesRow study, ClientQueryDataSet.SeriesRow series)
 {
     Study  = study;
     Series = series;
 }