diff --git a/oscar/SleepLib/loader_plugins/prisma_loader.cpp b/oscar/SleepLib/loader_plugins/prisma_loader.cpp
index 9ae1f938..94c11c88 100644
--- a/oscar/SleepLib/loader_plugins/prisma_loader.cpp
+++ b/oscar/SleepLib/loader_plugins/prisma_loader.cpp
@@ -49,7 +49,7 @@ ChannelID Prisma_Mode = 0, Prisma_SoftPAP = 0, Prisma_PSoft = 0, Prisma_PSoft_Mi
// waveforms
ChannelID Prisma_ObstructLevel = 0, Prisma_rMVFluctuation = 0, Prisma_rRMV= 0, Prisma_PressureMeasured = 0, Prisma_FlowFull = 0, Prisma_SPRStatus = 0, Prisma_EEPAP = 0;
// events
-ChannelID Prisma_Artifact = 0, Prisma_CriticalLeak = 0, Prisma_eSO = 0, Prisma_eMO = 0, Prisma_eS = 0, Prisma_eF = 0, Prisma_DeepSleep = 0;
+ChannelID Prisma_Artifact = 0, Prisma_CriticalLeak = 0, Prisma_eSO = 0, Prisma_eMO = 0, Prisma_eS = 0, Prisma_eF = 0, Prisma_DeepSleep = 0, Prisma_TimedBreath = 0;
QString PrismaLoader::PresReliefLabel() { return QString("SoftPAP: "); }
ChannelID PrismaLoader::PresReliefMode() { return Prisma_SoftPAP; }
@@ -205,19 +205,16 @@ void PrismaImport::run()
//TODO AXT
// session->settings[CPAP_Mode] = (int)MODE_BILEVEL_AUTO_VARIABLE_PS;
session->settings[Prisma_Mode] = (int)PRISMA_COMBINED_MODE_AUTO_ST;
-
session->settings[Prisma_EEPAP_Min] = parameters[PRISMA_LINE_EEPAP_MIN] / 100.0;
session->settings[Prisma_EEPAP_Max] = parameters[PRISMA_LINE_EEPAP_MAX] / 100.0;
session->settings[CPAP_EPAP] = parameters[PRISMA_LINE_EPAP] / 100.0;
session->settings[CPAP_IPAP] = parameters[PRISMA_LINE_IPAP] / 100.0;
session->settings[CPAP_IPAPHi] = parameters[PRISMA_LINE_IPAP_MAX] / 100.0;
- /*
- param_SoftStartPress
- param_PdiffNorm
- param_PdiffMax
- */
- session->settings[Prisma_AutoStart] = parameters[PRISMA_LINE_AUTOSTART];
+ session->settings[CPAP_PSMin] = parameters[PRISMA_LINE_PDIFF_NORM] / 100.0;
+ session->settings[CPAP_PSMax] = parameters[PRISMA_LINE_PDIFF_MAX] / 100.0;
+ session->settings[Prisma_Softstart_Pressure] = parameters[PRISMA_LINE_SOFT_START_PRESS] / 100.0;
session->settings[Prisma_Softstart_Time] = parameters[PRISMA_LINE_SOFT_START_TIME];
+ session->settings[Prisma_AutoStart] = parameters[PRISMA_LINE_AUTOSTART];
if (parameters.contains(PRISMA_SMART_TUBE_TYPE)) {
session->settings[Prisma_TubeType] = parameters[PRISMA_LINE_TUBE_TYPE] / 10.0;
@@ -232,10 +229,13 @@ void PrismaImport::run()
session->settings[Prisma_EEPAP_Min] = parameters[PRISMA_LINE_EEPAP_MIN] / 100.0;
session->settings[Prisma_EEPAP_Max] = parameters[PRISMA_LINE_EEPAP_MAX] / 100.0;
session->settings[CPAP_EPAP] = parameters[PRISMA_LINE_EPAP] / 100.0;
+ session->settings[CPAP_IPAP] = parameters[PRISMA_LINE_IPAP] / 100.0;
+ session->settings[CPAP_IPAPHi] = parameters[PRISMA_LINE_IPAP_MAX] / 100.0;
session->settings[CPAP_PSMin] = parameters[PRISMA_LINE_PDIFF_NORM] / 100.0;
session->settings[CPAP_PSMax] = parameters[PRISMA_LINE_PDIFF_MAX] / 100.0;
session->settings[Prisma_Softstart_Time] = parameters[PRISMA_LINE_SOFT_START_TIME];
session->settings[Prisma_Softstart_Pressure] = parameters[PRISMA_LINE_SOFT_START_PRESS] / 100.0;
+ session->settings[Prisma_AutoStart] = parameters[PRISMA_LINE_AUTOSTART];
if (parameters.contains(PRISMA_SMART_TUBE_TYPE)) {
session->settings[Prisma_TubeType] = parameters[PRISMA_LINE_TUBE_TYPE] / 10.0;
}
@@ -320,7 +320,7 @@ void PrismaImport::run()
// prisma line
AddWaveform(CPAP_EPAP, QString("EPAPsoll"));
AddWaveform(CPAP_IPAP, QString("IPAPsoll"));
- // AddWaveform(CPAP_EEPAP, QString("EEPAPsoll"));
+ AddWaveform(CPAP_EEPAP, QString("EEPAPsoll"));
// AddWaveform(CPAP_RespRate, "BreathFrequency");
// AddWaveform(CPAP_TidalVolume, "BreathVolume");
@@ -356,6 +356,7 @@ void PrismaImport::run()
AddEvents(Prisma_eF, PRISMA_EVENT_EPOCH_FLOW_LIMITATION);
AddEvents(Prisma_eS, PRISMA_EVENT_EPOCH_SNORE);
AddEvents(Prisma_DeepSleep, PRISMA_EVENT_EPOCH_DEEPSLEEP);
+ AddEvents(Prisma_TimedBreath, PRISMA_EVENT_TIMED_BREATH);
session->SetChanged(true);
loader->context()->AddSession(session);
@@ -827,13 +828,13 @@ void PrismaLoader::initChannels()
"Prisma_EEPAPMin", QObject::tr("EEPAPMin"),
QObject::tr("EEPAPMin"),
QObject::tr("EEPAPMin"),
- STR_UNIT_CMH2O, LOOKUP, Qt::green));
+ STR_UNIT_CMH2O, DEFAULT, Qt::green));
channel.add(GRP_CPAP, new Channel(Prisma_EEPAP_Max=0xe40a, SETTING, MT_CPAP, SESSION,
"Prisma_EEPAPMax", QObject::tr("EEPAPMax"),
QObject::tr("EEPAPMax"),
QObject::tr("EEPAPMax"),
- STR_UNIT_CMH2O, LOOKUP, Qt::green));
+ STR_UNIT_CMH2O, DEFAULT, Qt::green));
channel.add(GRP_CPAP, new Channel(Prisma_HumidifierLevel=0xe40b, SETTING, MT_CPAP, SESSION,
"Prisma_HumidLevel", QObject::tr("HumidifierLevel"),
@@ -852,8 +853,8 @@ void PrismaLoader::initChannels()
QObject::tr("Warning"),
QObject::tr("Warning"),
"", LOOKUP, Qt::green));
- chan->addOption(1, "Mode is not supported yet");
- chan->addOption(2, "Mode partially supported");
+ chan->addOption(1, "Mode is not supported yet, please send sample data.");
+ chan->addOption(2, "Mode partially supported, please send sample data.");
channel.add(GRP_CPAP, chan = new Channel(Prisma_ObstructLevel=0xe440, WAVEFORM, MT_CPAP, SESSION,
@@ -970,6 +971,16 @@ void PrismaLoader::initChannels()
STR_UNIT_Percentage, DEFAULT, QColor("light blue")));
chan->setEnabled(false);
+
+ channel.add(GRP_CPAP, chan = new Channel(Prisma_TimedBreath = 0xe44d, FLAG, MT_CPAP, SESSION,
+ "Prisma_TB",
+ QObject::tr("TimedBreath"),
+ // TODO AXT add desc
+ QObject::tr("TimedBreath"),
+ QObject::tr("TB"),
+ STR_UNIT_Percentage, DEFAULT, QColor("purple")));
+
+
}
bool PrismaLoader::initialized = false;
diff --git a/oscar/SleepLib/loader_plugins/prisma_loader.h b/oscar/SleepLib/loader_plugins/prisma_loader.h
index 2d893727..d36d1e49 100644
--- a/oscar/SleepLib/loader_plugins/prisma_loader.h
+++ b/oscar/SleepLib/loader_plugins/prisma_loader.h
@@ -123,6 +123,7 @@ enum Prisma_Event_Type {
PRISMA_EVENT_FLOW_LIMITATION = 151,
PRISMA_EVENT_CRITICAL_LEAKAGE = 161,
PRISMA_EVENT_CS_RESPIRATION = 181,
+ PRISMA_EVENT_TIMED_BREATH = 221,
PRISMA_EVENT_EPOCH_DEEPSLEEP = 261,
};