EKG_Project.IO.R_Peaks_Data_Worker.Load C# (CSharp) Method

Load() public method

public Load ( ) : void
return void
        public void Load()
        {
            R_Peaks_Data basicData = new R_Peaks_Data();
            XMLConverter converter = new XMLConverter(analysisName);

            XmlDocument file = new XmlDocument();
            string fileName = analysisName + "_Data.xml";
            file.Load(System.IO.Path.Combine(directory, fileName));

            XmlNodeList modules = file.SelectNodes("EKG/module");

            string moduleName = this.GetType().Name;
            moduleName = moduleName.Replace("_Data_Worker", "");

            foreach (XmlNode module in modules)
            {
                if (module.Attributes["name"].Value == moduleName)
                {
                    List<Tuple<string, Vector<double>>> RPeaks = new List<Tuple<string, Vector<double>>>();
                    XmlNodeList rPeaks = module.SelectNodes("RPeaks");
                    foreach (XmlNode rPeak in rPeaks)
                    {
                        XmlNode lead = rPeak["lead"];
                        string readLead = lead.InnerText;

                        XmlNode indices = rPeak["indices"];
                        string readIndices = indices.InnerText;
                        Vector<double> readDigits = converter.stringToVector(readIndices);

                        Tuple<string, Vector<double>> readRPeak = Tuple.Create(readLead, readDigits);
                        RPeaks.Add(readRPeak);
                    }
                    basicData.RPeaks = RPeaks;

                    List<Tuple<string, Vector<double>>> RRInterval = new List<Tuple<string, Vector<double>>>();
                    XmlNodeList intervals = module.SelectNodes("RRInterval");
                    foreach (XmlNode interval in intervals)
                    {
                        XmlNode lead = interval["lead"];
                        string readLead = lead.InnerText;

                        XmlNode samples = interval["intervals"];
                        string readSamples = samples.InnerText;
                        Vector<double> readDigits = converter.stringToVector(readSamples);

                        Tuple<string, Vector<double>> readInterval = Tuple.Create(readLead, readDigits);
                        RRInterval.Add(readInterval);
                    }
                    basicData.RRInterval = RRInterval;
                }
            }
            this.Data = basicData;
        }

Usage Example

Esempio n. 1
0
        public void Init(ModuleParams parameters)
        {
            Params = parameters as Heart_Class_Params;

            Aborted = false;
            if (!Runnable()) _ended = true;
            else
            {
                _ended = false;

                InputEcGbaselineWorker = new ECG_Baseline_Data_Worker(Params.AnalysisName);
                InputEcGbaselineWorker.Load();
                InputECGbaselineData = InputEcGbaselineWorker.Data;

                InputRpeaksWorker = new R_Peaks_Data_Worker(Params.AnalysisName);
                InputRpeaksWorker.Load();
                InputRpeaksData = InputRpeaksWorker.Data;

                InputWavesWorker = new Waves_Data_Worker(Params.AnalysisName);
                InputWavesWorker.Load();
                InputWavesData = InputWavesWorker.Data;

                OutputWorker = new Heart_Class_Data_Worker(Params.AnalysisName);
                OutputData = new Heart_Class_Data();

                _currentChannelIndex = 0;
                _samplesProcessed = 0;
                NumberOfChannels = InputECGbaselineData.SignalsFiltered.Count;
                _currentChannelLength = InputECGbaselineData.SignalsFiltered[_currentChannelIndex].Item2.Count;
                _currentVector = Vector<Double>.Build.Dense(_currentChannelLength);
                qrsEndStep = 10;
                i = 10;
                step = InputWavesData.QRSEnds[_currentChannelIndex].Item2[qrsEndStep]; //ilośc próbek, aż do indeksu końca 10 załamka
                _tempClassResult = new List<Tuple<int, int>>();

            }
        }
All Usage Examples Of EKG_Project.IO.R_Peaks_Data_Worker::Load