diff --git a/sleepyhead/SleepLib/loader_plugins/prs1_loader.cpp b/sleepyhead/SleepLib/loader_plugins/prs1_loader.cpp index 5c657045..7debd1ef 100644 --- a/sleepyhead/SleepLib/loader_plugins/prs1_loader.cpp +++ b/sleepyhead/SleepLib/loader_plugins/prs1_loader.cpp @@ -2090,6 +2090,20 @@ bool PRS1Import::ParseSummaryF5V1() return true; } +bool PRS1Import::ParseSummaryF5V2() +{ + const unsigned char * data = (unsigned char *)summary->m_data.constData(); + + if (data[0x00] > 0) { + return false; + } + + session->set_first(qint64(summary->timestamp) * 1000L); + + CPAPMode cpapmode = MODE_UNKNOWN; + summary_duration = data[0x18] | data[0x19] << 8; +} + bool PRS1Import::ParseSummaryF0V6() { // DreamStation machines... @@ -2290,6 +2304,8 @@ bool PRS1Import::ParseSummary() return ParseSummaryF5V1(); } else if (summary->familyVersion == 0) { return ParseSummaryF5V0(); + } else if (summary->familyVersion == 2) { + return ParseSummaryF5V1(); } default: ; diff --git a/sleepyhead/SleepLib/loader_plugins/prs1_loader.h b/sleepyhead/SleepLib/loader_plugins/prs1_loader.h index 2b342fce..67b4d9d3 100644 --- a/sleepyhead/SleepLib/loader_plugins/prs1_loader.h +++ b/sleepyhead/SleepLib/loader_plugins/prs1_loader.h @@ -141,10 +141,13 @@ public: bool ParseSummaryF0V4(); //! \brief Summary parser for 1060 series AVAPS models bool ParseSummaryF3(); - //! \brief Summary parser for 50 series Family 0 BiPAP/AutoSV models + //! \brief Summary parser for 50 series Family 5-0 BiPAP/AutoSV models bool ParseSummaryF5V0(); - //! \brief Summary parser for 60 series Family 0 BiPAP/AutoSV models + //! \brief Summary parser for 60 series Family 5-1 BiPAP/AutoSV models bool ParseSummaryF5V1(); + //! \brief Summary parser for 60 series Family 5-2 BiPAP/AutoSV models + bool ParseSummaryF5V2(); + //! \brief Summary parser for DreamStation series CPAP/APAP models bool ParseSummaryF0V6();