Click here to Skip to main content
Click here to Skip to main content
 
Add your own
alternative version

Tagged as

ECG recording, storing, filtering and recognition

, 14 Apr 2004
Full open code project for making driver and application software for ECG medical measurements.
ecg_dsp_src.zip
drvECG_1
drvECG_1.clw
drvECG_1.def
drvECG_1.dsp
drvECG_1.dsw
drvECG_1.exp
drvECG_1.ilk
drvECG_1.lib
res
Ecg_1
ECG_1.clw
ECG_1.dsp
ECG_1.dsw
ECG_DRAW.obj
ECG_Statistic_View.lib
ECG_VIEW.exp
ECG_VIEW.ilk
ECG_VIEW.lib
TestOCX.ocx
drvECG_1.exp
drvECG_1.ilk
drvECG_1.lib
resource.hm
res
ECG_1.ico
bitmap1.bmp
bmp00001.bmp
setup.bmp
ECG_Statistic_View
ECG_Statistic_View.clw
ECG_Statistic_View.def
ECG_Statistic_View.dsp
ECG_Statistic_View.dsw
res
ECG_VIEW
ECG_DRAW.obj
ECG_VIEW.APS
ECG_VIEW.clw
ECG_VIEW.def
ECG_VIEW.dll
ECG_VIEW.dsp
ECG_VIEW.dsw
ECG_VIEW.exp
ECG_VIEW.lib
res
testrecord2.zip
georgi.ecg
test_file1.zip
test_file1.ecg
// ECG_Data.h: interface for the ECG_Data class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_ECG_DATA_H__01535160_9360_11D7_8A9A_85AFB17F9D7A__INCLUDED_)
#define AFX_ECG_DATA_H__01535160_9360_11D7_8A9A_85AFB17F9D7A__INCLUDED_

#include "Person.h"	// Added by ClassView
#include "ECG_Info.h"	// Added by ClassView
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CECG_Data  
{
public:
	int GetQTQTcms(int pos);
	int GetPRms(int pos);
	int GetQRSms(int pos);
	CEcg_Info ecg_info;
	CPerson person;
	void GetPosTime(int pos,BYTE* hh,BYTE* mm);
	int GetQRSCount(int pos);
	CString GetInfoFrom(int pos,int* qrs_count,int * qrs_ms,int* pr_ms,int* qt_qtc_ms,BYTE* hh,BYTE* mm);
	void SetInfoAt(int pos,CString comment,int qrs_count,int qrs_ms,int pr_ms,int qt_qtc_ms,BYTE hh,BYTE mm);
	void SerializeAll(CArchive* ar);
	void RemoveAll();
	void OpenFile(CString File_Name);
	void SaveData(CString File_Name);
	int GetAllDataLenght();
	void GetFrom(double* dest,int start,int lenght);
	void SetDataAt(double* source,int start,int lenght);
	void Message(double msg);
	void SetDataNew(double* source,int lenght,CString commentint,int QRS_count,int QRS_ms,int PR_ms,int QT_QTc_ms,BYTE hh,BYTE mm);
	CWordArray DATA;//array will store the data
	CStringArray COMMENT;
	CWordArray QRS_COUNT;
	CWordArray QRS_MS;
	CWordArray PR_MS;
	CWordArray QT_QTc_MS;
	CWordArray TIME;
	
	CECG_Data();
	virtual ~CECG_Data();

private:
	void GetTime(WORD w_time,BYTE* hh,BYTE* mm);
	WORD SetTime(BYTE hh,BYTE mm);

	
};

#endif // !defined(AFX_ECG_DATA_H__01535160_9360_11D7_8A9A_85AFB17F9D7A__INCLUDED_)

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

Georgi Petrov
Systems Engineer
Bulgaria Bulgaria
PhD, Cum Laude in digital automation systems
M.S. in Telemommunication management
B.S. in Telecommunication systems engineering
Programming: CUDA, C/C++, VHDL
Software and Hardware development and consulting:
data acquisition, image processing, medical instrumentation

| Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.150327.1 | Last Updated 15 Apr 2004
Article Copyright 2003 by Georgi Petrov
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid