mirror of
https://gitlab.com/pholy/OSCAR-code.git
synced 2025-04-16 18:50:46 +00:00
Apply smoothing between values in LineCursor graph values
This commit is contained in:
parent
439e0d742c
commit
97abbb4da2
@ -442,9 +442,7 @@ int IntellipapLoader::Open(QString path)
|
|||||||
sess->AddEventList(CPAP_ExP, EVL_Event);
|
sess->AddEventList(CPAP_ExP, EVL_Event);
|
||||||
}
|
}
|
||||||
|
|
||||||
// for (int q = 0; q < m_buffer[pos + 0x5]; q++) {
|
sess->eventlist[CPAP_ExP][0]->AddEvent(time, m_buffer[pos + 0x5]);
|
||||||
sess->eventlist[CPAP_ExP][0]->AddEvent(time, m_buffer[pos + 0x5]);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_buffer[pos + 0x10] > 0) {
|
if (m_buffer[pos + 0x10] > 0) {
|
||||||
@ -452,9 +450,7 @@ int IntellipapLoader::Open(QString path)
|
|||||||
sess->AddEventList(CPAP_Obstructive, EVL_Event);
|
sess->AddEventList(CPAP_Obstructive, EVL_Event);
|
||||||
}
|
}
|
||||||
|
|
||||||
// for (int q = 0; q < m_buffer[pos + 0x10]; q++) {
|
sess->eventlist[CPAP_Obstructive][0]->AddEvent(time, m_buffer[pos + 0x10]);
|
||||||
sess->eventlist[CPAP_Obstructive][0]->AddEvent(time, m_buffer[pos + 0x10]);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_buffer[pos + 0x11] > 0) {
|
if (m_buffer[pos + 0x11] > 0) {
|
||||||
@ -462,9 +458,7 @@ int IntellipapLoader::Open(QString path)
|
|||||||
sess->AddEventList(CPAP_Hypopnea, EVL_Event);
|
sess->AddEventList(CPAP_Hypopnea, EVL_Event);
|
||||||
}
|
}
|
||||||
|
|
||||||
// for (int q = 0; q < m_buffer[pos + 0x11]; q++) {
|
sess->eventlist[CPAP_Hypopnea][0]->AddEvent(time, m_buffer[pos + 0x11]);
|
||||||
sess->eventlist[CPAP_Hypopnea][0]->AddEvent(time, m_buffer[pos + 0x11]);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_buffer[pos + 0x12] > 0) { // NRI // is this == to RERA?? CA??
|
if (m_buffer[pos + 0x12] > 0) { // NRI // is this == to RERA?? CA??
|
||||||
@ -472,9 +466,7 @@ int IntellipapLoader::Open(QString path)
|
|||||||
sess->AddEventList(CPAP_NRI, EVL_Event);
|
sess->AddEventList(CPAP_NRI, EVL_Event);
|
||||||
}
|
}
|
||||||
|
|
||||||
// for (int q = 0; q < m_buffer[pos + 0x12]; q++) {
|
sess->eventlist[CPAP_NRI][0]->AddEvent(time, m_buffer[pos + 0x12]);
|
||||||
sess->eventlist[CPAP_NRI][0]->AddEvent(time, m_buffer[pos + 0x12]);
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
quint16 tv = (m_buffer[pos + 0x8] << 8) | m_buffer[pos + 0x9]; // correct
|
quint16 tv = (m_buffer[pos + 0x8] << 8) | m_buffer[pos + 0x9]; // correct
|
||||||
|
@ -953,7 +953,7 @@ void Session::UpdateSummaries()
|
|||||||
|
|
||||||
EventDataType Session::SearchValue(ChannelID code, qint64 time)
|
EventDataType Session::SearchValue(ChannelID code, qint64 time)
|
||||||
{
|
{
|
||||||
qint64 tt, start;
|
qint64 t1, t2, start;
|
||||||
QHash<ChannelID, QVector<EventList *> >::iterator it;
|
QHash<ChannelID, QVector<EventList *> >::iterator it;
|
||||||
it = eventlist.find(code);
|
it = eventlist.find(code);
|
||||||
quint32 *tptr;
|
quint32 *tptr;
|
||||||
@ -963,6 +963,8 @@ EventDataType Session::SearchValue(ChannelID code, qint64 time)
|
|||||||
int i=5;
|
int i=5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
EventDataType a,b,c,d,e;
|
||||||
|
double;
|
||||||
if (it != eventlist.end()) {
|
if (it != eventlist.end()) {
|
||||||
int el_size=it.value().size();
|
int el_size=it.value().size();
|
||||||
for (int i = 0; i < el_size; i++) {
|
for (int i = 0; i < el_size; i++) {
|
||||||
@ -973,17 +975,30 @@ EventDataType Session::SearchValue(ChannelID code, qint64 time)
|
|||||||
|
|
||||||
if (el->type() == EVL_Waveform) {
|
if (el->type() == EVL_Waveform) {
|
||||||
qint64 tt = time - el->first();
|
qint64 tt = time - el->first();
|
||||||
qint64 i = tt / el->rate();
|
int i = tt / el->rate();
|
||||||
return el->data(i);
|
return el->data(i);
|
||||||
} else {
|
} else {
|
||||||
start = el->first();
|
start = el->first();
|
||||||
tptr = el->rawTime();
|
tptr = el->rawTime();
|
||||||
|
|
||||||
for (int j = 0; j < cnt-1; j++) {
|
for (int j = 0; j < cnt-1; ++j) {
|
||||||
tptr++;
|
tptr++;
|
||||||
tt = start + *tptr;
|
t2 = start + *tptr;
|
||||||
if (tt > time) {
|
if (t2 > time) {
|
||||||
return el->data(j);
|
tptr--;
|
||||||
|
t1 = start + *tptr;
|
||||||
|
c = EventDataType(t2 - t1);
|
||||||
|
d = EventDataType(t2 - time);
|
||||||
|
e = d/c;
|
||||||
|
a = el->data(j);
|
||||||
|
b = el->data(j+1);
|
||||||
|
if (a == b) {
|
||||||
|
return a;
|
||||||
|
} else { //if (a > b) {
|
||||||
|
return b + ((a-b) * e);
|
||||||
|
}// else { // a < b
|
||||||
|
// return a + ((b-a) * e);
|
||||||
|
//}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -233,7 +233,7 @@ Overview::Overview(QWidget *parent, gGraphView *shared) :
|
|||||||
//set->addSlice(PRS1_SysOneResistSet,COLOR_Gray,ST_SETAVG);
|
//set->addSlice(PRS1_SysOneResistSet,COLOR_Gray,ST_SETAVG);
|
||||||
set->addSlice(CPAP_HumidSetting, COLOR_Blue, ST_SETWAVG);
|
set->addSlice(CPAP_HumidSetting, COLOR_Blue, ST_SETWAVG);
|
||||||
set->addSlice(CPAP_PresReliefSet, COLOR_Red, ST_SETWAVG);
|
set->addSlice(CPAP_PresReliefSet, COLOR_Red, ST_SETWAVG);
|
||||||
//set->addSlice(RMS9_EPRLevel,COLOR_Green,ST_SETWAVG);
|
set->addSlice(RMS9_EPRLevel,COLOR_Green,ST_SETWAVG);
|
||||||
//set->addSlice(INTP_SmartFlex,COLOR_Purple,ST_SETWAVG);
|
//set->addSlice(INTP_SmartFlex,COLOR_Purple,ST_SETWAVG);
|
||||||
SET->AddLayer(set);
|
SET->AddLayer(set);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user