EKGfreq Klassenreferenz

Diese Klasse implementiert einen Pulsfrequenzzähler. Mehr ...

#include <EKGfreq.h>

Klassendiagramm für EKGfreq:

EKGdevice gEKGfreq

Aufstellung aller Elemente

Öffentliche Methoden

 EKGfreq ()
 Konstruktor.
bool setBeep (bool x)
 Piepsen auf cerr ein/aus schalten.
bool setFreq (bool x)
 Pulsfrequenz-Ausgabe auf cerr ein/aus schalten.
float setDecay (float x)
 Setzt Zeitkonstante für Sinken der Schwelle in Sekunden.
virtual void input (float *d)
 Überschreiben von EKGdevice::input().

Geschützte Methoden

virtual void handleQRS ()
 Auf QRS-Komplex reagieren.
void beep ()
 Piepsen, falls eingeschaltet.
void printFreq ()
 Gibt Pusfrequenz aus, falls eingeschaltet.
void calcFreq ()
 Mißt Pulsfrequenz.
bool aboveThreshold (const float x)
 Prüft überschrteiten der positiven oder unterschreiten der negativen Schwelle.

Geschützte Attribute

bool beepFlag
 Flag für piepsen.
bool freqFlag
 Flag für Frequenzausgabe.
int freq
 gemessene Pulsfrequenz.
double lastQRS
 Zeitpunkt des letzten QRS-Komplex.
float Pthreshold
 Positive Schwelle für QRS-Komplex.
float Nthreshold
 Negative Schwelle für QRS-Komplex.
float Zthreshold
 Mittelwert, der als Bezugspunkt für die Schwellen dient.
float decay
 Zerfallskonstante für Sinken der Schwelle.
float zdecay
 Zerfallskonstante für Mittelwert Zthreshold.
bool QRS
 Jetzt ist QRS Flag.


Ausführliche Beschreibung

Diese Klasse implementiert einen Pulsfrequenzzähler.

Die Puslfrequenz kann auf stderr ausgegeben werden (setFreq()). Außerdem kann bei jedem Herzschlag ein Piep (^G) auf stderr ausgegeben werden (setBeep()).

Autor:
Lars Stollenwerk, Oktober 2002

Dokumentation der Elementfunktionen

bool EKGfreq::setBeep ( bool  x  ) 

Piepsen auf cerr ein/aus schalten.

Parameter:
x true = ein
Rückgabe:
bisheriger Zustand

bool EKGfreq::setFreq ( bool  x  ) 

Pulsfrequenz-Ausgabe auf cerr ein/aus schalten.

Parameter:
x true = ein
Rückgabe:
bisheriger Zustand

float EKGfreq::setDecay ( float  x  ) 

Setzt Zeitkonstante für Sinken der Schwelle in Sekunden.

Zeitkonstante setzen.

Parameter:
x Neue Zeitkonstante in Sekunden.
Rückgabe:
bisherige Zeitkonstante in Sekunden.
Der Faktor in jedem Zeitschritt dt beträgt decay = ( 1 - dt / x ) Das entspricht der DGL d/dt u(t) = - u(t) / x

void EKGfreq::input ( float *  d  )  [virtual]

Überschreiben von EKGdevice::input().

Hier findet die Datenverarbeitung statt.

Erneute Implementation von EKGdevice.

Erneute Implementation in gEKGfreq.

void EKGfreq::beep (  )  [inline, protected]

Piepsen, falls eingeschaltet.

Gibt ^G auf stderr aus. Wird von handleQRS aufgerufen.

void EKGfreq::printFreq (  )  [inline, protected]

Gibt Pusfrequenz aus, falls eingeschaltet.

Wird von handleQRS aufgerufen.

void EKGfreq::calcFreq (  )  [protected]

Mißt Pulsfrequenz.

Die Pulsfrequenz wird anhand zweier aufeinanderfolgender QRS-Komplexe gemessen. Wird von handleQRS aufgerufen.

bool EKGfreq::aboveThreshold ( const float  x  )  [protected]

Prüft überschrteiten der positiven oder unterschreiten der negativen Schwelle.

Es wir nur mit der betragsmäßig größeren Schwelle verglichen.

Parameter:
x zu überprüfender Wert
Rückgabe:
über/unterschreiten einer Schwelle


Dokumentation der Datenelemente

double EKGfreq::lastQRS [protected]

Zeitpunkt des letzten QRS-Komplex.

Diese Angabe wird von calcFreq() gebraucht.

float EKGfreq::Zthreshold [protected]

Mittelwert, der als Bezugspunkt für die Schwellen dient.

Wird aus Mittelung mit 10-facher decay-Zeit gebildet.

float EKGfreq::decay [protected]

Zerfallskonstante für Sinken der Schwelle.

Die Schwelle wird nach jedem Wertetripel mit decay multipliziert. Es muß also decay < 1 sein.

float EKGfreq::zdecay [protected]

Zerfallskonstante für Mittelwert Zthreshold.

Die Zerfallszeit für den Mittlewert ist zehn mal so lang wie die für die Schwellwerte, also ist zdecay = decay / 10.

bool EKGfreq::QRS [protected]

Jetzt ist QRS Flag.

Ist true während eines QRS-Komplex.


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien:

Erzeugt am Mon Feb 8 23:06:55 2010 für EKG Projekt von  doxygen 1.5.6